vb 将text、combo、DTPicker1等里面的数据写入ACCESS数据库问题

DimSQL1AsStringDimadocnAsNewADODB.ConnectionDimadorsAsNewADODB.Recordsetadocn.Open"Pr... Dim SQL1 As String
Dim adocn As New ADODB.Connection
Dim adors As New ADODB.Recordset

adocn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\192.168.1.100\\NJWN资料共享\chaijian\bizhub.mdb;Persist Security Info=false"
adocn.Execute "select * from 拆件"
SQL1 = "INSERT INTO 拆件 (机器型号,包装条形码,机器所属,操作人员,操作记录,操作日期,是否完成,备注,是否归还) VALUES('" & Text1.Text & "','" & Text2.Text & "','" & Text3.Text & "','" & Combo1.Text & "','" & Text5.Text & "','" & DTPicker1 & "','" & Combo2.Text & "','" & Text4.Text & "','" & Combo3.Text & "')"
adocn.Execute SQL1
adocn.Close
Adodc.Refresh

运行后输入数据 vb提示 ”操作必须是一个可更新的查询“ 这个该怎么解决啊?
展开
 我来答
乐游原上的歌者
2011-09-28 · TA获得超过383个赞
知道小有建树答主
回答量:278
采纳率:71%
帮助的人:231万
展开全部
adocn.Close,注意这句,连接关了,下面的查询记录集从哪取数?
再说你的Adodc也没有SET 呀.它到底是指向哪个adocn.Execute
追问
前面是连接打开 然后写入 再然后关闭  我不需要查询 是不是我的打开方式不对或者这个打开方式的权限不够?
能不能换一种打开的方式呢?
追答
不需要查询,那你Adodc.Refresh这一句用来干什么的,我看了好久,也没看出来它有什么作用,再说,你向表中写入数据后为什么一定要关闭ADOCN呢?程序在你的控制之下,完全不用的,它还可以为其它查询提供数据连接,我认为后两句没什么作用,先在前面打个'单引号试试.还有,你这个查询记录集
adocn.Execute "select * from 拆件"
它的返回记录怎么提取?我认为应该这样

adocn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\192.168.1.100\\NJWN资料共享\chaijian\bizhub.mdb;Persist Security Info=false"

SET Adodc=adocn.Execute "select * from 拆件"
SQL1 = "INSERT INTO 拆件 (机器型号,包装条形码,机器所属,操作人员,操作记录,操作日期,是否完成,备注,是否归还) VALUES('" & Text1.Text & "','" & Text2.Text & "','" & Text3.Text & "','" & Combo1.Text & "','" & Text5.Text & "','" & DTPicker1 & "','" & Combo2.Text & "','" & Text4.Text & "','" & Combo3.Text & "')"
adocn.Execute SQL1
Adodc.Refresh'这样刷新才可能实现
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式