//–注意:不管用那种方式 最后都要加finally关闭 ;前面3节课没做
package java_269_JDBC_ResultSet结果集用法_游标原理_关闭连接问题_练习;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/**
-
测试PreparedStatement结果集的基本用法
*/
public class Demo04 {
public static void main(String[] args) {
//声明
Connection conn =null;
PreparedStatement ps =null;
ResultSet rs = null;
//URL指向要访问的数据库名emrs
//String url = “jdbc:mysql://localhost:3306/testjdbc?characterEncoding=utf8”;
try {
//加载驱动类
Class.forName(“com.mysql.jdbc.Driver”);
//连接数据库
conn = DriverManager.getConnection(
“jdbc:mysql://localhost:3306/testjdbc?useSSL=false&characterEncoding=UTF-8”,“root”,“www4152276”);/*//定义SQL;添加时间 String sql = "insert into t_user(username,pwd,regTime) values(?,?,?)";//添加regTime;否则报错 //调用 PreparedStatement ps = conn.prepareStatement(sql);//注意导入的包名 ps.setObject(1, "ssx"); ps.setObject(2, "2222"); ps.setObject(3, new java.sql.Date(System.currentTimeMillis())); //更新几条数据 int count = ps.executeUpdate();//有几条数据更新了 即String sql = "insert into t_user(username,pwd,regTime) values(?,?,?)"; System.out.println(count);//返回的更新行数 ;现在返回的更新结果是1条 */ //查询数据 String sql = "select id,username,pwd from t_user where id>?";//*代表id,username,pwd //调用 ps = conn.prepareStatement(sql);//注意导入的包名 ps.setObject(1, 2);//把id>2的记录都取出来 rs = ps.executeQuery(); while(rs.next()){//游标 System.out.println(rs.getInt(1)+"---"+rs.getString(2)+"---"+rs.getString(3)); //取出记录的第一列id;记录的第二列名字;记录的第三列密码 } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { **//关闭遵循先进后关原则;一定要分开关闭,这样出现异常不影响后面的程序执行** if(rs!=null){ try { rs.close();//关闭 } catch (SQLException e) { e.printStackTrace(); } } if(ps!=null){ try { ps.close();//关闭 } catch (SQLException e) { e.printStackTrace(); } } if(conn!=null){ try { conn.close();//关闭 } catch (SQLException e) { e.printStackTrace(); } } }
}
}
//---------------------------结果---------------------------
//-------------JDBC常用接口--------------------
注意:不管用那种方式 最后都要加finally关闭