A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wildcat 中级黑马   /  2015-2-12 16:26  /  821 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.PreparedStatement是预编译的,对于批量处理可以大大提高效率. 也叫JDBC存储过程,但不适合一次性操作。

2.使用 Statement 对象。在对数据库只执行一次性存取的时侯,用 Statement 对象进行处理。PreparedStatement 对象的开销比Statement大,对于一次性操作并不会带来额外的好处,但多次操作和批量处理数据时PreparedStatement 对象优势就出来了

3.statement每次执行sql语句,相关数据库都要执行sql语句的编译,preparedstatement是预编译得,   preparedstatement支持批处理。
4.PrepareStatement中执行的SQL语句中是可以带参数的,也就是说可以替换变量,尽量采用实用?的方式传递参数,增加代码的可读性又可以预编译加速;而Statement则不可以。


Statement:


String sqlstr= "update user set  no=44 where name like'kaka'"
stmt.executeUpdate(sqlstr);


PreparedStatement :

PreparedStatement ps= con.prepareStatement(""update user set  no = ? where name like ? ");
ps.setInt(1, 44);
ps.setString(2, "kaka");
ps.executeUpdate();



我这是对PreparedStatement和Statement简单理解,这也是一个同学问到我时自己整理的。


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马