您的位置:首页 > 其它

关于JDBC的一些笔记

2014-09-01 15:55 190 查看



关于JDBC的一些笔记

(1)jdbc连接数据库:首先要找到相应的数据库驱动,指定连接的数据库

加载驱动:Class.forName(驱动名);
获得连接:Connection con = DriverManager.getConnection("数据库连接","用户名","密码");


(2)执行SQL语句:Statement && PreparedStatement

写法:Statement stmt = con.createStatement();
或PreparedStatement pstm = con.preparedStatement(sql);
1>执行查询:返回结果ResultSet集 stmt.executeQuery(sql语句);
2>执行增删改:返回影响行数 int count = stmt.executeUpdate(sql语句);
3>获得游标:rs.next();判断是否有下一个游标 返回一个boolean
4>获得结果类型:rs.get类型名(字段名)
操作完成,关闭顺序,后打开的先关闭。


(3)调用存储过程:CallableStatement csmt =con.prepareCall("{call p(?,?,?,?)}");

创建一个调用存储过程的对象,调用存储过程,存储过程名字叫p,他有4个参数

csmt.registerOutParament(3,Types.INTEGER);
csmt.registerOutParament(4,Types.INTEGER);//设置输出数,并设置类型
csmt.setInt(1,3);
csmt.setInt(2,5);
csmt.setInt(4,7);//设置参数的值
csmt.execute();//执行操作
csmt.getInt(3);
csmt.getInt(4);//获取存储过程的输出值
csmt.close();//关闭执行结果


(4)批处理Batch

Statement stmt = con.createStatement();
stmt.addBatch(SQL语句);
stmt.addBatch(SQL语句);
stmt.addBatch(SQL语句);
stmt.addBatch(SQL语句);
stmt.executeBatch();
或:

PreparedStatement pstm = null;
pstm = con.prepareStatement("insert into aa values(?,?,?)");
pstm.setInt(1, 12);
pstm.setString(2,"李五A");
pstm.setString(3, "中文A");
pstm.addBatch();
pstm.setInt(1, 22);
pstm.setString(2,"李五B");
pstm.setString(3, "中文B");
pstm.addBatch();
pstm.setInt(1, 32);
pstm.setString(2,"李五C");
pstm.setString(3, "中文C");
pstm.addBatch();

//批量执行上面3条语句.
int [] counts = statement.executeBatch();
//Commit it--写入数据库
connection.commit();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: