关于javaodbc的信息

博主:adminadmin 2022-12-02 01:40:07 63

本篇文章给大家谈谈javaodbc,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

JAVA ODBC ACCESS 标准表达式中数据类型不匹配 是怎么回事啊?

你是在发sql是出错还是在rs.get时出错啊:

1、发sql时:如果你的“学号”在数据库里是int类型的,改成:

学号="+guess);

2、rs.get时,这些类型和数据库的数据类型有没有对应上啊:

String

name=rs.getString("姓名");

int

age=rs.getInt("年龄");

String

address=rs.getString("家庭住址");

int

score=rs.getInt("入学成绩");

怎样JAVA通过JDBC-ODBC桥访问数据源,配置数据源

导入java.sql包

一、加载要连接数据库的驱动程序

//Jdbc-Odbc桥 和 Microsoft Access 数据库

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

// SQL Server 驱动程序:

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

注:Class.forName()方法将给定的类加载到JVM,如果系统中不存在给定的类,则会引发异常

二、通过驱动程序管理器得到连接实例

Connection conn=null;

//1.

//1.1建立数据源

conn=DriverManager.getConnection("jdbc:odbc:MyDataSource"); //MyDataSource是数据源名称

//1-2、不建立数据源

conn=DriverManager.getConnection("jdbc:odbc:;Driver=Microsoft Access Driver (*.mdb);DBQ=C:\\VBTest.mdb");

//2.SQL Server

conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=mydb","sa","");

注:DriverManager类跟踪已注册的驱动程序,通过getConnection(URL)方法, 找到一个能够连接至URL中指定的数据库驱动程序

它接收三个参数, 分别表示1 数据源的名称、类型 2 用户名(可选) 3 密码(可选)

三、基于连接对象建立处理器对象

Statement stmt=conn.createStatement();

四、准备sql命令

String sql="select * from Student";

五、执行命令返回结果集

ResultSet rs=stmt.executeQuery(sql);

六、显示结果集

while(rs.next())//只要后面有记录

{

//对当前行的所有字段遍历

for(int i=1;i=rs.getMetaData().getColumnCount();i++)

{

System.out.print(rs.getMetaData().getColumnName(i)+": ");//显示字段名

System.out.println(rs.getString(i));//显示字段当前值

}

System.out.println();

}

七、关闭资源

rs.close(); //关闭记录集

stmt.close(); //关闭处理器对象

conn.close(); //关闭连接对象

预处理器的应用:

//3.基于连接对象建立预处理器对象

PreparedStatement pstmt=conn.prepareStatement("insert into student values(?,?,?,?)");

//4.给预处理对象的参数赋值

pstmt.setString(1,"8888");

pstmt.setString(2,"nemo");

pstmt.setString(3,"accp");

pstmt.setString(4,"sanxianglu");

//5.执行预处理命令

int i=pstmt.executeUpdate();

System.out.println(i+"条记录已成功插入!");

java通过jdbc-odbc连接数据库

实现思路:就是通过ojdbc.jar中提供的方法,直接连接数据库即可,固定代码写法如下:

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.Statement;

 

public class JDBCTest {

public static void main(String[] args) throws Exception {

//1.加载驱动

//Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

//Class.forName("com.mysql.jdbc.Driver");

Class.forName("oracle.jdbc.driver.OracleDriver");

 

//2.创建数据库连接对象

//Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=db","sa","sqlpass");

//Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db?useUnicode=truecharacterEncoding=UTF-8","root","123456");

Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","Oracle123");

 

//3.创建数据库命令执行对象

Statement stmt = conn.createStatement();

//      PreparedStatement ps = conn.prepareStatement("select * from t_user");

 

//4.执行数据库命令

ResultSet rs = stmt.executeQuery("select * from t_user");

//      ResultSet rs = ps.executeQuery();

 

//5.处理执行结果

while (rs.next()) {

int id = rs.getInt("id");

String username = rs.getString("username");

String password = rs.getString("password");

System.out.println(id + "\t" + username + "\t" + password);

}

 

//6.释放数据库资源

if (rs != null) {

rs.close();

}

//      if (ps != null) {

//          ps.close();

//      }

if (stmt != null) {

stmt.close();

}

if (conn != null) {

conn.close();

}

}

}

如何使用java动态创建ODBC数据源

jdbc数据库连接:1.加载驱动Class.forName(“xxxDriver”)2建立连接:Connection conn= DriverManager.getConnection(url,user,password);(url是连接地址ip端口号和数据库实例名,user用户名,password密码)3获取statement对象:Statement stmt=conn.createStatement();4通过Statement执行Sql语句:stmt.executeQquery(String sql)会返回查询结果集,stmt.executeUpdate(String sql)返回int型,表示影响记录的条数;5处理结果:ResultSet rs=str.executeQuery(String sql);while(rs.next()){

System.out.println(rs.getInt(id));

}

5:关闭数据源:rs.close();

下面是连接各种数据库的方法:

1、Oracle8/8i/9i数据库(thin模式)

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

String url="jdbc:oracle:thin:@localhost:1521:orcl";

//orcl为数据库的SID

String user="test";

String password="test";

Connection conn= DriverManager.getConnection(url,user,password);

2、DB2数据库

Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();

String url="jdbc:db2://localhost:5000/sample";

//sample为你的数据库名

String user="admin";

String password="";

Connection conn= DriverManager.getConnection(url,user,password);

3、Sql Server7.0/2000数据库

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";

//mydb为数据库

如何配置JAVA的ODBC数据源。

package com.bin.struts.util;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class DBConn2000 {

public static Connection getConn(){

String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";

String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=//数据库名字";

String user = "sa";

String password = "123";

try {

Class.forName(driver);

} catch (ClassNotFoundException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

try {

return DriverManager.getConnection(url,user,password);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

return null;

}

}

public static Connection close(){

return null;

}

}

这是2000的连接方法

这是2005的连接串

jdbc:sqlserver://localhost:1433;databasename=//数据库

com.microsoft.sqlserver.jdbc.SQLServerDriver

2000数据库需要打SP4补丁.

并且两个都需要专门的JDBC驱动的

Java为什么不使用ODBC

1)Java不能直接使用ODBC。因为ODBC使用C语言接口,如果让Java来调用本机C代码的话

,那么会在安全、属性、健壮性、应用的可移植性等方面带来困难。

(2)不希望把ODBC C API逐字地翻译成Java API。例如,ODBC使用了大量的易于出错的指

针,而Java取消了这种不安全的指针。现在通过JDBC,把ODBC翻译成具有Java风格的面向对象

的接口。

(3)ODBC难以学习。ODBC把简单功能与高级功能混杂在一起,即便是简单的查询也会带来

复杂的任选项。而JDBC的设计使得简单的事情用简单的做法,仅在必要时才让用户使用高级

功能。

(4)JDBC的Java API提供"纯Java"的解决办法。当使用ODBC时,ODBC驱动器管理程序与驱

动器必须手工地装入到每架客户机上。而JDBC驱动器全部是用Java编写的,JDBC代码则在所

有Java平台(从网络计算机到主机)上都可自动安装,并且是可移植的和安全的。

关于javaodbc和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-02,除非注明,否则均为首码项目网原创文章,转载请注明出处。