目录
一、JDBC(Java DataBase Connectivity)
一、JDBC(Java DataBase Connectivity)
是Java程序连接数据库,执行sql(DDL,DML(DQL))语句的技术。
二、技术实现
面向接口编程
接口:
java.sql.Driver
java.sql.Connection
java.sql.Statement
java.sql.ResultSet
使用:
1、前提条件
得到对应数据库的驱动程序jar包(官网下载)
2、代码实现
(1) 项目与模块引用(导入)jar包:
a. 项目建立:libraries project structure --> libraries --> 添加
b. 模块引用:libraries project structure --> Modules --> 添加
(2) 加载驱动程序
Class.Class.forName("驱动程序类 包名 + 类名");
a. 驱动程序类一定实现了java.sql.Driver接口
b. Class.forName()静态方法
c. 会抛出一个编译时异常ClassNotFoundException
d. 回去DriverManager注册
(3) 建立连接
(需要知道IP地址 端口号(port) databaseName userName pwd)
a. URL 固定格式: IP地址:端口号(port) databaseName userName pwd
b. getConnection()静态方法
c. 抛出编译时异常SQLException 调用java.sql包中的任何一个类的任何一个方法
都会抛出编译时异常SQLException
(4) 创建Statement对象
con.createStatement()
(5) 执行sql
(DML insert update delete/select)
a. int executeUpdate(insert update delete)返回sql语句影响的行数
b. ResultSet executeQuery(select)结果集
(6)关闭资源
三、代码
public static void main(String[] args) {
Connection con = null;
Statement sta = null;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://localhost:1433;databaseName=pas";
con = DriverManager.getConnection(url,"sa","sa");
System.out.println(con);
sta = con.createStatement();
//String sql = "insert into teacher (teanum, teaName, teatitle, teatypeid, teabtd, pwd, static) values ('20210001', '一一', '学习委员', 1, '2003-3-4', 1, 1)";
String sql = "delete from teacher where teaNum = '20210001'";
int rows = sta.executeUpdate(sql);
if (rows == 1){
System.out.println("op success");
}else{
System.out.println("op error");
}
} catch (ClassNotFoundException e) {
System.out.println("驱动程序加载错误");
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}finally {
try {
if (sta != null){
sta.close();
sta = null;
}
if (con != null){
con.close();
con = null;
}
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}