Java连接数据库主要有两种方式
Java连接数据库主要有两种方式一、方式介绍
方式一、使用jdbc-odbc桥连接
这种方式是不需要jdbc驱动程序的,只需要在控制面板中建立一个ODBC数据源就可以了。注意的是,建立数据源是在系统DSN中进行的,但请切记所建立的数据源的名称。
方式二、使用sql-server专用的驱动程序(即SQL Server 2000 driver for JDBC)进行连接,或称非jdbc-odbc桥连接方式。
还需下载SQL Server 2000的补丁SQL2000-KB884525-SP4-x86- CHS.EXE和SQL Server 2000 driver for JDBC。使用专用连接方式访问速度比较快一些,而且不需要再控制面板中添加数据源
二、Java连接数据库的一般步骤(以Sql Server 2000为例)
1、加载驱动程序
方式一:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
方式二:
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
2、创建数据库的连接
方式一:
Connection dbConn = DriverManager.getConnection("jdbc:odbc:DSource");
其中,DSource是你建立数据源时,取的数据源名。
方式二:
String dbUrl = "jdbc:microsoft:sqlserver://127.0.0.1:1433; DatabaseName=pubs"; /*pubs是自己选的默认的数据库*/
String userName = "sa";
String userPass = "saPassword";
Connection dbConn = DriverManager.getConnection(dbUrl, username, userPass );
温馨提示:至此,就、你的Java已经顺利连接到Sql Server 2000数据库了!
(以下两步为实际应用,就不做阐述)
3、创建语句对象
4、处理查询
三、具体连接代码,测试数据库是否连接成功
方式一:jdbc-odbc 桥连接方式
package dbtest;
import java.sql.Connection;
import java.sql.DriverManager;
public class TestDB {
public static void main(String[] args) {
String driverName = "sun.jdbc.odbc.JdbcOdbcDriver";
String c ;
Connection dbConn;
try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(connection );
System.out.println(Congratulation, Connection Successful!");
}
catch (Exception e) {
e.printStackTrace();
}
}
}
方式二;非 jdbc-odbc 桥连接方式
package dbtest;
import java.sql.Connection;
import java.sql.DriverManager;
public class TestDB {
public static void main(String[] args) {
String driverName ="com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://127.0.0.1:1433; DatabaseName=pubs";
String userName = "sa";
String userPwd = "ethip";
Connection dbConn;
try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
System.out.println("Congratulation, Connection Successful!");
}
catch (Exception e) {
e.printStackTrace();
}
}
四、数据库连接错误浅析
如果以上的代码运行后,输出"Congratulation ,connection Successful! ",那就代表一切正常,连接数据库成功,你可以进行Statement、ResultSet的操作了;反之,一定是出现了相应的异常。
如果提示错误"Error establishing socket",请根据之前的说明安装相应的SQL Server 2000补丁即可。如果提示"ClassNotFoundException",那一定是 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 该段代码拼写有误,或者是SQL Server 2000 Driver For JDBC 的Lib目录下的三个.jar文件(msbase.jar、mssqlserver.jar、msutil.jar,他们是所需的JDBC驱动的核心
)未加入到classpath中,当然如果用的是eclipse等IDE可以在创建java文件时载入。
五、更多信息
Author: Ethip
E-mail: [email=shengvsjun@]shengvsjun@[/email]
我乐网([url=http://www.]www.[/url])CEO周娟
[[italic] 本帖最后由 Ethip 于 2008-1-22 18:50 编辑 [/italic]]