ORCALE数据库问题
我用vb连接orcale数据库
cn.open "Provider=MSDAORA.1;password=;user id=;data source=;persist security info=true"
连接数据库,查询都没有问题!
但是进行更新数据的时候就会报错如下:
实时错误:‘3251’
当前记录集不支持更新。这可能是提供程序的限制,也可能是选定锁定类型的限制。
调试了好久都不行,请高手帮忙!!
万分感谢
[解决办法]
do while rs.eof ==>do while Not rs.eof
rs.updata =>rs.Update
如果你是为了实现这个效果
根本不需要这个循环,只要
cn.Execute("Update a Set c=a+b")
一句就行了
[解决办法]
sql=" update a set c=a+b"
cn.execute sql
[解决办法]
不要用魔法数!
rs.open 的第三、四两个参数用不同的值试试,不同的数据库对游标的支持不一样。
[解决办法]
用 SQL Plus、相同的用户测试一下更新,就能确定是否有权限了。
或者装个 PL/SQL Developer,操作 Oracle 会方便很多。
[解决办法]
采用客户端游标——这样调用 rs.Update 方法时 ADO 是通过合成 UPDATE 命令来进行更新的。
原先采用服务端游标——这样调用 rs.Update 方法时 ADO 是直接通过游标来进行更新的,说明你打开的这个 Oracle 游标不支持更新。