我再给你加100分,超级大难题,据说是bug 使用ADO中 Connection 的Execute 方法执行SQL 语句的 Update.... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼上的,这个功能是能够通过其他方法实现,但是我想知道为什么update不行,到底错在那里?谢了!! Conn.Execute "Update TabName Set Field=... where..." '打开公式表记录集 Set rstFormula = New ADODB.Recordset rstFormula.CursorType = adOpenKeyset rstFormula.LockType = adLockOptimistic rstFormula.Open "公式表", adCn, , , adCmdTable iVerifyResult = VerifyFormula() If iVerifyResult = 1 Then rstFormula.Fields("所在表") = mstrTableName '自动将表名添加到公式表中 rstFormula.Update '公式合法,保存所作的修改,这里出错 ElseIf iVerifyResult = -1 Then MsgBox "公式不正确,修改正确后才能保存!", vbExclamation Exit Sub Else '无法识别公式的正确性 Exit Sub End If 同志们,你们碰到这种怪事吗?用addnew方法后update就不行了,如果不用addnew直接用update是能够保存的。救我!我做了这么多年的程序员,头一回碰到这种怪事! ADO本身就有BUG 建议你尽量采用 sql 加一行试试:rstFormula.CursorLocation = adUseClient 还是不行,ado是不是用visual c++做的? 用addnew方法后update就不行了,如果不用addnew直接用update是能够保存的。cancelupdate知道吗? 添加记录时才先用AddNew再用Update,如果是更新记录,赋值之后直接调用Update方法 我也遇到过这样的问题,要看你采用的是什么样的数据库系统,有些时候addnew之后要添加延迟(是不是很夸张,但我添加延迟之后就是能用了) 把你的adCn.open "...." 贴出来,让我们瞧瞧 记录集最好用sql语句还有是不是你的表结构有问题我以前也碰到过这类问题好像是数据库中表的索引问题 vb利用excel绘制两条折线图 自从运行VB程序后,电脑系统启动完后弹出这样一窗体??? [求助]简体VB怎样开发英文软件 请问在VB中怎么设置报表中的纸型 请问,用vb编程序,可以检测到VPN是否连通吗? 不读取网站数据库,怎么样获得某个页面的点击次数? VB怎么加如非VB文件,如*.AVI 请高手指点......(20分哟!) 请问怎样调用系统的拨号上网? 一个关于交叉表的问题 怎样不让用户改变窗口大小 如何使程序在运行时在任务栏不显示
Set rstFormula = New ADODB.Recordset
rstFormula.CursorType = adOpenKeyset
rstFormula.LockType = adLockOptimistic
rstFormula.Open "公式表", adCn, , , adCmdTable
iVerifyResult = VerifyFormula()
If iVerifyResult = 1 Then
rstFormula.Fields("所在表") = mstrTableName '自动将表名添加到公式表中
rstFormula.Update '公式合法,保存所作的修改,这里出错
ElseIf iVerifyResult = -1 Then
MsgBox "公式不正确,修改正确后才能保存!", vbExclamation
Exit Sub
Else '无法识别公式的正确性
Exit Sub
End If
用addnew方法后update就不行了,如果不用addnew直接用update是能够保存的。
救我!我做了这么多年的程序员,头一回碰到这种怪事!
建议你尽量采用 sql
rstFormula.CursorLocation = adUseClient
cancelupdate知道吗?
还有是不是你的表结构有问题
我以前也碰到过这类问题好像是数据库中表的索引问题