一.简述
全称是Java database connectivity,是java语言操作数据库的 api (应用程序编程接口)
二.一般操作步骤
(1)加载驱动
(Driver) jdbc的驱动就是一个连接工厂,生成的产品是连接对象
com.mysql.jdbc.Driver 是Driver的mysql实现类
具体代码如下
Class.forName(“驱动类名”);
比如
Class.forName(“com.mysql.jdbc.Driver”);
jdbc3.0以上的版本可以省略这一步
(2)获取连接对象
具体代码如下:
DriverManager.getConnection(url, 用户名, 密码); // 内部调用了 Driver 对象获取数据库连接
url的格式为:jdbc:mysql://ip地址:端口号/数据库名?参数
例如
Connection conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/kukuku”, “root”, “root”);
(3)创建语句
Statement stmt = conn.createStatement();
(4)执行sql
int rows = stmt.executeUpdate(sql); // 用来执行 insert , update, delete , DDL , 返回值代表影响行数
ResultSet rs = stmt.executeQuery(sql); // 用来执行 select
boolean moreRows = rs.next() 取得下一条记录,
moreRows 是true ,表示有下一条记录, false 表示没有了
while(rs.next()) {
}
(5)释放资源 ( 先打开的资源后关闭 )
rs.close();
stmt.close();
conn.close();
实例
三.PreparedStatement预编译语句对象
(1)需要预先sql语句
PreparedStatement psmt = conn.prepareStatement(String sql)
(2)可以在sql中用?占位某个值
insert into student(sid,sname,birthday,sex) values(null, ?, ?, ?)
(3)给?赋值
使用PreparedStatement中一系列以 set开头的方法
setString(?的位置, 值)
setInt(?的位置, 值)
setDate(?的位置, 值)
?的位置以1开始,1,2,3…
psmt.setString(1, “李四”);
psmt.setString(2, “1999-9-7”);
psmt.setString(3, “男”);
(4)执行sql
psmt.executeUpdate();
注意:?能够占位的只有值, 不能是表名、列名、关键字