错误代码 3020 在不使用AddNew或Edit情况下,更新Update或取消更新CancelUpdate" 的错误提示对话框

环境监测技术 2017-03-17 01:42:09
为什么程序启动时就提示错误,如图1。

运行时,保存数据时还提示错误,如图2.


如何解决,大师们!!
代码附上:
Dim sql As String
Dim Cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\vbworks.mdb"

sql = "Select * From duocanshu"

rs.Open sql, Cn, 1, 3
Data1.Recordset.AddNew
Data1.Recordset.Fields("测试时间") = Text17.Text
Data1.Recordset.Fields("测试地点") = Text1.Text
Data1.Recordset.Fields("项目1") = Text8.Text
Data1.Recordset.Fields("项目2") = Text16.Text
Data1.Recordset.Fields("项目3") = Text9.Text
Data1.Recordset.Fields("项目4") = Text10.Text
Data1.Recordset.Fields("项目5") = Text13.Text
Data1.Recordset.Fields("项目6") = Text15.Text
Data1.Recordset.Fields("项目7") = Text3.Text
Data1.Recordset.Fields("项目8") = Text2.Text

Data1.UpdateRecord
rs.Close
Cn.Close
...全文
1638 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
韧恒 2017-04-02
  • 打赏
  • 举报
回复
真的没看出来你的Data1这个控件是干什么用的,从前面的变量定义看,可以直接用来操作数据库了。

Dim sql As String
Dim Cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\vbworks.mdb"

sql = "Select * From duocanshu"

rs.Open sql, Cn, 1, 3
rs.AddNew
rs.Fields("测试时间") = Text17.Text
rs.Fields("测试地点") = Text1.Text
rs.Fields("项目1") = Text8.Text
rs.Fields("项目2") = Text16.Text
rs.Fields("项目3") = Text9.Text
rs.Fields("项目4") = Text10.Text
rs.Fields("项目5") = Text13.Text
rs.Fields("项目6") = Text15.Text
rs.Fields("项目7") = Text3.Text
rs.Fields("项目8") = Text2.Text
rs.Update
rs.Close
Cn.Close
舉杯邀明月 2017-03-17
  • 打赏
  • 举报
回复
没看到你的Data1对象,和 Cn、rs 产生了任何“关联”啊。
Tiger_Zhao 2017-03-17
  • 打赏
  • 举报
回复

你想做什么(需求)->你预想是怎么做的(设计)->看代码是否按预想的写(检查)
给个代码就要求改错,那么把代码全删掉保证就没错
环境监测技术 2017-03-17
  • 打赏
  • 举报
回复
不好意思,能否说得具体点?Tiger_Zhao
Tiger_Zhao 2017-03-17
  • 打赏
  • 举报
回复
用 rs 打开,然后用 Data1.Recordset 更新!!!
别把不同地方抄来的代码拼一块用啊,出错是应该不出错才是见鬼了。

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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