Dim StoreNoToUpdate As String
Dim Marsha As String
StoreNoToUpdate = "ABCXYZ123"
Marsha = "hi"
db.Execute "Update TblLodgingReport set [MarshaCode]= 'Marsha' where [Store Number ID]= 'ABCXYZ123'"
我想在“ABCXYZ123”位置更新“hi”。但它没有粘贴“喜”,而是粘贴“玛莎”。
答案 0 :(得分:5)
您需要远离SQL连接并开始使用参数。
使用参数查询:
PARAMETERS [prmMarshaCode] Text (50), [prmStoreNoToUpdate] Text (50);
UPDATE TblLodgingReport SET [MarshaCode] = [prmMarshaCode]
WHERE [Store Number ID] = [prmStoreNoToUpdate];
在VBA中调用上述查询:
With CurrentDb().QueryDefs("qryName")
.Parameters("[prmMarshaCode]").Value = Marsha
.Parameters("[prmStoreNoToUpdate]").Value = StoreNoToUpdate
.Execute dbFailOnError
End With
答案 1 :(得分:0)
尝试:
Dim StoreNoToUpdate As String
Dim Marsha As String
StoreNoToUpdate = "ABCXYZ123"
Marsha = "hi"
Db.Execute "Update TblLodgingReport set [MarshaCode]='" & Marsha & "'where [Store Number ID]= 'ABCXYZ123'"
答案 2 :(得分:0)
尝试更改以下行
db.Execute "Update TblLodgingReport set [MarshaCode]='" & Marsha & "' where [Store Number ID]='" & StoreNoToUpdate & "'"
因为'Marsha'
意味着您实际上将Marsha作为字符串发送而不使用该变量。