标准表达式中的数据类型不匹配,我认为下面的代码是正确的,但现在我得到了这个错误,不知道我添加的是不正确的。
以下代码将发布到数据库
函数Main()只连接到DB
Private Sub adddata()
Main
Dim strSQL As String
Data1 = Sheets("Sticker").Range("B6").Value
Data2 = Sheets("Sticker").Range("D4").Value
Data3 = Sheets("Sticker").Range("A2").Value
Data4 = Sheets("Sticker").Range("C8").Value
Data5 = Sheets("Sticker").Range("B14").Value
Data6 = Sheets("Sticker").Range("D12").Value
Data7 = Sheets("Sticker").Range("A10").Value
Data8 = Sheets("Sticker").Range("C16").Value
strSQL = "INSERT INTO STICKER (CertNo, IssueDate, Serial, RecalDue,CertNo_Vic, IssueDate_Vic, Serial_Vic, RecalDue_Vic)" & _
"VALUES('" & _
Data1 & "','" & _
Data2 & "','" & _
Data3 & "','" & _
Data4 & "','" & _
Data5 & "','" & _
Data6 & "','" & _
Data7 & "','" & _
Data8 & "')"
adoConnection.Execute strSQL, , adCmdText + adExecuteNoRecords
MsgBox "Added info to the db ", vbExclamation, "Connection.Execute"
End Sub
答案 0 :(得分:1)
您要连接哪个数据库?假设它是Access,日期文字必须用#字符包围,而不是单引号,例如#7/12/2013#
但更好的解决方案是使用参数化查询 - 这样您就不必担心正确的引号并简单地按原样传递值。额外奖励:这将有助于避免可能的SQL注入。