VBA(ADO)操作Access遇到报错,心态炸裂~
access吧
全部回复
仅看楼主
level 4
大佬,执行SQL语句更新Access数据时报错,咋解决?
以下是代码全文:
Sub Acc_Initl()
Dim Adconn As Object, Adrs As Object
Set Adconn = CreateObject("adodb.connection")
Set Adrs = CreateObject("adodb.recordset")
With Adconn
.provider = "Microsoft.ace.oledb.12.0"
.Properties("Jet OLEDB:Database Password").Value = "7"
.Open ThisWorkbook.Path & "\xx.accdb"
End With
SQL= "Update Users set Date_db =
#2023-1-1#
where ID_db='123'"
Adrs.Open SQL, Adconn, 1
Adrs.Close
Set Adrs = Nothing
Set Adconn = Nothing
End Sub
2023年10月16日 15点10分 1
level 1
#2023-1-1#
要加引号吧
2023年10月17日 03点10分 2
不需要
2023年10月17日 06点10分
level 5
adrs 是个记录集对象吧,打开记录集对象以后用ado的更新方法。要执行sql语句更新直接用连接对象执行,没必要用记录集
2023年12月14日 13点12分 4
level 5
测试一下你的链接字符串对不对,然后打开连接,最后用连接去执行sql
2023年12月14日 13点12分 5
不是这个原因,我后来找到原因了,因为我写的模块太多,会相互干扰,跑着跑着ADO对象就掉了,所以我现在每次需要链接时,都重新申明和对象化,处理完立即=nothing
2023年12月29日 03点12分
吧务
level 13
最好 是在局部函数中 调用,用完就关闭。
2024年01月02日 02点01分 6
对,我在5楼就是这样写的[哈哈]
2024年02月04日 05点02分
吧务
level 13
另看看ID 是否数字型,数字型不需要加 引号
2024年02月18日 01点02分 7
那个只是举例,一般ID都是文本类型
2024年02月18日 08点02分
1