主页 > 知识库 > sql2005 批量更新问题的解决方法

sql2005 批量更新问题的解决方法

热门标签:北京智能外呼系统供应商家 孝感销售电销机器人厂家 智能电销机器人教育 奥维地图标注字体大小修改 中国地图标注省份用什么符号 无锡梁溪公司怎样申请400电话 高德地图标注电话怎么没了 江西稳定外呼系统供应商 电话机器人录音师薪资
首先注意Statement 和PreparedStatement的问题
Statement sm = cn.createStatement();
sm.addBatch(sql1);
sm.addBatch(sql2);
...
sm.executeBatch()
用Statement的好处就是每次可以直接传一个SQL语句进去,不用管那么多。可是在数据量比较大的时候,应该会对效率有影响。不建议使用。
PreparedStatement ps = cn.preparedStatement(sql);
{
 ps.setXXX(1,xxx);
 ...
 ps.addBatch();
}
ps.executeBatch();
PreparedStatement是会预编译的,只要一条SQL,不断动态设值,然后addBatch(),在数据量大的时候比较好,非常建议使用。
还有就是JDBC的驱动问题,很多同志可能还是在用2000的驱动呢,没有用批量更新的程序没有多大问题,可是一旦用了批量更新,出现很多问题,
反正数据库很卡,慢。还可以更新不了哦。
我强烈建议大家更新JDBC驱动。
但是如果出现
SQLServerException: sp_cursoropen/sp_cursorprepare: 该语句参数只能是一个批或带有单个 SELECT 语句的存储过程,且不带 FOR BROWSE、COMPUTE BY 或变量赋值。
应该就是JDBC的版本问题,1.0的驱动有这个问题,好像不支持批量更新,我建议大家使用1.2
我测试过了,完全没有问题!
提供一些数据连接参数
jdbc.driverClassName:com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc.url:jdbc:sqlserver://127.0.0.1:1444;databaseName=fax;selectMethod=cursor;

标签:海北 通化 泰州 阜阳 荆州 那曲 齐齐哈尔 临沧

巨人网络通讯声明:本文标题《sql2005 批量更新问题的解决方法》,本文关键词  sql2005,批量,更新,问,题的,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《sql2005 批量更新问题的解决方法》相关的同类信息!
  • 本页收集关于sql2005 批量更新问题的解决方法的相关信息资讯供网民参考!
  • 推荐文章