怎么会是游标问题?

DawnPine 2006-12-05 06:10:59
Sub test()
Dim Cnn As New ADODB.Connection
Dim rstSQL As New ADODB.Recordset

Cnn.Open "Driver={SQL Server};Server=192.168.2.9;UID=sa;PWD=123;DataBase=App"
rstSQL.Open "MInfo", Cnn, 3, 3
rstSQL.AddNew
rstSQL(0) = 111
rstSQL(1) = "KKK"
rstSQL.Update '这句报错80040E23
End Sub
这是出问题的一段VB代码。如果执行SQL语句
delete from minfo
能清空minfo表

这段代码以前也是正常的,代码没变过,但更换了服务器(换了一台新的IBM的机器)。这个问题与换了机器有关吗?
为什么会报错?如何解决?
...全文
218 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
shawnwan 2006-12-06
  • 打赏
  • 举报
回复
应该是数据库端的问题,既然报错80040E23,就看看是什么鸟问题
DawnPine 2006-12-06
  • 打赏
  • 举报
回复
1 服务器地址没问题,帖子里说了,能用delete清空这个表,说明地址 权限等都没问题
2 MInfo表的第一列互不相同且已设为主键

我的感觉和 天蓝水晶 一样,是数据库端的问题(因为代码以前是能用的),但我就是不知道问题出在哪里 :(
DawnPine 2006-12-06
  • 打赏
  • 举报
回复
找到问题啦!!!!!!!
rstSQL.Open "MInfo", Cnn, 3, 3
这行代码连SQL2K没有问题
连2005的话要用 ...,0,3
即 .CursorType = adOpenForwardOnly

但为什么会这样呢? 还是不明白 :-(

哪位来解释一下?
panjinfu80 2006-12-05
  • 打赏
  • 举报
回复
数据库没有设置好吧,服务端管理器与客户端管理器。
marco08 2006-12-05
  • 打赏
  • 举报
回复
关注
hellowork 2006-12-05
  • 打赏
  • 举报
回复
可能MInfo表没有标识列.试试为MInfo表增加一个IDENTITY标识列.
dongjixing 2006-12-05
  • 打赏
  • 举报
回复
也可能是你其他代码的问题
dongjixing 2006-12-05
  • 打赏
  • 举报
回复
代码没问题,你的服务器地址正确吗?

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧