用stmt.executeUpdate("select * from "+this.tableName+" for update");
解决方案 »
- 错误: 程序包java.awr不存在 怎么回事呢?
- JAVA正则表达式原创教程
- BufferedReader#readline()发生莫名IllegalArgumentException异常
- 新年新的一天开始,大家快乐啦
- 如何写一个自定义类型
- 谁有Together for Jbuilder 6.0的license??
- jsp中怎样读出数据库中的大文本,图像!!!
- 得分机会,快来呀
- 如何在一个类中,建立一个公共变量,使得不同的包内的其他类,可以访问这个变量?
- 帮忙啊!!!!!来者又分
- 利用sun.net.smtp.SmtpClient发送邮件出现了一点问题?)欢迎来讨论
- 高分求教:谁能用贪心算法来解决这个问题?在线等待
Statement类的executeUpdate方法返回值是long不是ResultSet
你的RESULSET不可以使用RS.UPDATEXXX()的方法吗!?
不要使用你的那句SQL,可以使用一个简单的查询试试看!应该可以的!
executeUpdate()只能执行insert,update,delete等sql语句
再说它的返回值是一个long型,不是 ResultSet
就是不能执行updateXXX
java.sql.SQLException :对只读结果级的无效操作 updateString;
--JDBC FAQ
--JDBC 2.0 Features
--JDBC Compatability Paper
还是没有发现问题的原因
Statement stmt=connect.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
ResultSet rs=stmt.executeQuery("select * from "+this.tableName+" for update");
的作用是
create a scrollbale result set that is updatable and sensitive to updates.
我怀疑你的数据库是否被设为只读。
Statement stmt=connect.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);下的updateString()操作。
可以执行INSERT语句
我试了是可以的
classes12.zip或classes12.jar
但是不知道你的"for update"是干什么用的(对SQL不是很懂)
我加上即出错
去掉就成功
--- ZJQ