JDBC连接数据库及增删查改
1.JDBC连接到数据库
JDBC连接数据库分为以下7个步骤:
(1)加载JDBC驱动:
将驱动程序 mysql-connector-java-5.1.6-bin,复制到\lib目录下,程序就可以通过JDBC接口访问MySQL数据库了。对于MySQL数据库,其驱动程序加载格式:
Class.forName("com.mysql.jdbc.Driver");
其中,"com.mysql.jdbc.Driver"为MySQL数据库驱动程序类名。
(2)创建连接对象:
需要首先形成"连接符号字(URL)",然后利用"连接符号字"实现连接并创建连接对象。假设用户名为"root",密码为"123456",数据库名为"students",则
String url="jdbc:mysql://localhost:3306/students?user=root&password=123456&useUnicode=true&characterEncoding=UTF-8";
Connection con=DriverManager.getConnection(url);
(3)书写SQL语句。例如查询:String sql="selcet * from ...";
(4)创建数据库的操作对象。
执行静态SQL语句。通常通过Statement实例实现。
执行动态SQL语句。通常通过PreparedStatement实例实现。
Statement statement=con.createStatement(sql);
或者
PreparedStatement pstatement=con.preparedStatement(sql)
(5)执行SQL语句。
Statement主要提供了如下两种执行SQL语句的方法。
ResultSet executeQuery(String sql):执行select语句,返回一个结果集。
int executeUpdate(String sql):执行 update、insert、delete,返回一个整数,表示执行SQL语句影响的数据行数。
//查询stu_info表中的所有记录并形成查询结果集
String sql="select * from stu_info";
ResultSet result=statement.executeQuery(sql);
(6)遍历结果集。
使用结果集(ResultSet)对象的访问方法获取数据:
while(rs.next()){
String name = rs.getString("name") ;
String pass = rs.getString(1) ;
}
(7)释放资源。
假设建立的对象一次为连接对象为con、操作对象为statement,得到的查询结果集对象为result,则需要一次关闭的对象:
result.close();
statement.close();
con.close();
JDBC连接到数据到此就结束了。
2.JDBC的增删查改
此处的增删查改都是在JDBC连接到数据库的基础上进行的。
(1)增加数据:
...
String sql="insert into stu_info values('001','张三','男') ";
state.executeUpdate(sql);
(2)删除数据:
...
String sql="delete from stu_info where id='001'";
state.executeUpdate(sql);
(3)查找数据:
...
String sql="select * from stu_info";
ResultSet result=state.executeQuery(sql);
while(result.next()){
System.out.println(result.getString(1)+" "+result.getString(2)+...);
(4)更改数据:
...
String sql="update stu_info set name='李四' where id='001'";
state.executeUpdate(sql);