Ms access INSERT INTO语句RTE'中的语法错误-2147217900(80040e14)和#x27;:
我试着将strSQL缩减为一个字段,一切都正常。一旦我添加了第二个字段,我就开始得到错误。这告诉我参考文献是正确的。我尝试了很多不同的间距,但也没有成功Ms access INSERT INTO语句RTE'中的语法错误-2147217900(80040e14)和#x27;:,ms-access,vba,ms-access-2010,Ms Access,Vba,Ms Access 2010,我试着将strSQL缩减为一个字段,一切都正常。一旦我添加了第二个字段,我就开始得到错误。这告诉我参考文献是正确的。我尝试了很多不同的间距,但也没有成功 ?strSQL INSERT INTO tbl_buyer_column (ship_id, aels_id, buyer_wss, column, date_created)VALUES(23, 13, K, 1, #04/17/2015#) Public Sub fun_insert_into(lngship_id As Long,
?strSQL
INSERT INTO tbl_buyer_column (ship_id, aels_id, buyer_wss, column, date_created)VALUES(23, 13, K, 1, #04/17/2015#)
Public Sub fun_insert_into(lngship_id As Long, lngAels_id As Long, strBuyer_wss As String, lngColumn As Long, datDate_created As Date)
Dim strSQL As String
Dim adoCon As ADODB.Connection
Dim adoCmd As ADODB.Command
Set adoCon = CurrentProject.Connection
Set adoCmd = New ADODB.Command
strSQL = "INSERT INTO tbl_buyer_column (ship_id, aels_id, buyer_wss, column, date_created)" & _
"VALUES(" & lngship_id & ", " & lngAels_id & ", " & strBuyer_wss & ", " & lngColumn & ", " & SQLDate(datDate_created) & ")"
With adoCmd
.ActiveConnection = adoCon
.CommandType = adCmdText
.CommandText = strSQL
.Execute
End With
adoCon.Close
Set adoCon = Nothing
Set adoCmd = Nothing
End Sub
列
是一个。这可能是语法错误的根源。如果是这样,可以通过将字段名括在方括号中来避免该错误。更好的是,如果可能,用非保留字重命名字段
如果该建议确实消除了第一个错误,则可以通过在值
列表中的字符K周围添加引号来避免以后的另一个错误
在Access查询设计器中将其作为新查询进行测试。如果工作正常,请调整VBA代码以生成相同的INSERT
语句文本
插入tbl\U买方列(发货id、aels\U id、买方wss、[列]、创建日期)
价值观(23,13,'K',1,#04/17/2015#)
另请注意,您可以使用参数查询来执行
插入操作
。这种方法的一个好处是可以避免由于值分隔符而产生的问题。不要不同意您所说的任何话,但在大多数情况下,首先可能最好避免使用保留字。需要[]和“在买家周围”。