Statement 和PreparedStatement的问题
Statement sm = cn.createStatement();
sm.addBatch(sql1);
sm.addBatch(sql2);
...
sm.executeBatch()
用Statement的好处就是每次可以直接传一个SQL语句进去,不用管那么多。可是在数据量比较大的时候,应该会对效率有影响。不建议使用。
PreparedStatement = 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;
sql server 批量更新问题的解决方法
来源:这里教程网
时间:2026-02-28 05:57:32
作者:
编辑推荐:
- sql server 批量更新问题的解决方法02-28
- ASP.NET恢复备份Sql server02-28
- SQL查询结果集对防注入的影响分析02-28
- sql server 2005与xml实例教程02-28
- mssql server数据库重命名方法02-28
- sql 去除重复记录的语句02-28
- sql UNION过滤重复记录语句并取得不重复的数据02-28
- mssql 数据库重命名及错误分析02-28
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- Win11 21H2版本停止服务要升级系统吗?
Win11 21H2版本停止服务要升级系统吗?
26-02-28 - SQLServer执行计划成本(续1)
SQLServer执行计划成本(续1)
26-02-28 - 修改电脑、伺服器名称后,SQL Server 的修正作业--补遗篇
修改电脑、伺服器名称后,SQL Server 的修正作业--补遗篇
26-02-28 - 新手必备,教你轻松安装Win10系统!
新手必备,教你轻松安装Win10系统!
26-02-28 - Windows开机黑屏如何重装系统?【图文详解】
Windows开机黑屏如何重装系统?【图文详解】
26-02-28 - 云计算之路-阿里云上:超级奇怪的“黑色10秒钟”
云计算之路-阿里云上:超级奇怪的“黑色10秒钟”
26-02-28 - 解决SYS本地登录或远程登录引起ORA-01031错误方法
解决SYS本地登录或远程登录引起ORA-01031错误方法
26-02-28 - ora-12154:tns:无法解析指定的连接标识符
ora-12154:tns:无法解析指定的连接标识符
26-02-28 - 创建 Oracle 分页存储过程
创建 Oracle 分页存储过程
26-02-28 - NoSQL学习之路(四):创建、读
NoSQL学习之路(四):创建、读
26-02-28
