JDBC Driver 可根据自身实际需要到官网下载对应的版本,下载完成后在Eclipse中添加即可。
SQL Server jdbc 驱动:右键单击项目->Build Path->Configure Bulid Path->Add External JARs->sql_jdbc.jar
若出现version错误,则驱动与JDK版本不兼容,需安装更高版本的JDK;
若出现TCP/IP Connection错误:配置工具->SQL Server Configuration Manager->MssqlSERVER的协议,看看TCP/IP协议是否启动,如果启动,右键菜单点"属性" ,在分页菜单中选"IP地址",把"IP1"和"IP2"中"TCP端口"为1433,"已启用"改为"是";
配置工具->SQL Server Configuration Manager->SQL Native Client 配置->客户端协议->TCP/IP
选择TCP/IP右键菜单中"属性",确认"默认端口"是1433,"已启用"为"是"
在java项目中,只需要引入mysql-connector-java-5.1.7-bin.jar就可以运行java项目。
在web项目中,当Class.forName("om.mysql.jdbc.Driver");时myeclipse是不会去查找字符串,不会去查找驱动的。所以只需要把mysql-connector-java-5.1.7-bin.jar拷贝到tomcat下lib目录就可以了。
Driver接口:java.sql.Driver是所有JDBC驱动程序需要实现的接口,这个接口对应不同的数据库。
SQLserver的JDBC驱动的类名:"com.microsoft.sqlserver.jdbc.SQLServerDriver"
Oracle的JDBC驱动的类名:"oracle.jdbc.driver.OracleDriver"
MySQL的JDBC驱动的类名:"com.mysql.jdbc.Driver"
加载与注册JDBC驱动
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");该语句用于加载
JDBC连接数据库的URL表现形式通常分为三个部分:
协议:在JDBC中唯一允许的协议只能为jdbc;
子协议:子协议用于标识一个数据库驱动程序;
子名称:具体看下面。
连接SQLserver: "jdbc:sqlserver://localhost:1433;DatabaseName=databasename"
连接Oracle: "jdbc:thin:@localhost:1521:databasename"
连接MySQL: "jdbc:mysql://localhost:3306/databasename",可简写为"jdbc:mysql:///databasename"
执行SQL语句接口Statement对象,该对象的常用方法:
void close() 关闭释放资源
ResultSet executeQuery(String sql):执行某条查询语句并返回结果
int execulteUpdate(String sql):可以执行insert,undate或者delete语句
excute(String sql):用于向数据库发送任意sql语句
addBatch(String sql):把多条sql语句放到一个批处理中
excuteBatch():像数据库发送一批sql语句执行
5>简单实现(Eclipse连接SQL Server):
import java.sql.*;
public class SQLServer_Connection {
public static void main(String[] args) {
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Hospital";
String userName = "sunyao";
String userPwd = "123";
Statement stmt = null;
ResultSet rs = null;
// 加载与SQLserver数据库连接的驱动
try{
Class.forName(driverName);
System.out.println("加载驱动成功!");
}catch (Exception e) {
e.printStackTrace();
System.out.println("加载驱动失败!");
}
try{
// 与数据库连接//不能采用Windows身份验证方式
Connection conn = DriverManager.getConnection(dbURL, userName, userPwd);
System.out.println("连接数据库成功!");
String SQL = "SELECT * FROM Huser";
stmt = conn.createStatement();
rs = stmt.executeQuery(SQL);
//输出指定数据库表中的相关信息
while (rs.next()) {
System.out.println(rs.getString(1) + " " + rs.getString(2) + "\t" + rs.getString(3));
}
}catch (Exception e) {
e.printStackTrace();
System.out.print("SQL Server连接失败!");
}
}
}