VB SQL error: The instruction INSERT contains a syntax error
VB SQL error: The instruction INSERT contains a syntax error
我正在处理一个带有数据库的项目,我正在尝试使用以下查询在我的 table 中创建一行:
"INSERT INTO USERCOINFO (username, company, streetAddress, postalCode, language, department, postOfficeBox, country, telephoneNumber, faxNumber, title, givenName, surname) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
这些值由以下变量使用
填充
Dim dbInsert As New OleDb.OleDbCommand
Dim objClient = GetObject(objRecordSet.Fields("ADsPath").Value)
Dim username = objRecordSet.Fields("Name").Value
Dim company = objClient.company
Dim streetAddress = objClient.streetAddress
Dim postalCode = objClient.postalCode
Dim lo = objClient.lo
Dim department = objClient.department
Dim postOfficeBox = objClient.postOfficeBox
Dim country = objClient.co
Dim telephoneNumber = objClient.telephoneNumber
Dim faxNumber = objClient.facsimiletelephonenumber
Dim title = objClient.title
Dim givenName = objClient.givenName
Dim surname = objClient.sn
然后我将它们绑定为:
dbInsert.Parameters.AddWithValue("@p1", username)
dbInsert.Parameters.AddWithValue("@p2", company)
'and so on...
据我所知,这是正确的,但它仍然是 returns 语法错误:
The instruction INSERT contains a syntax error.
试试这个
"INSERT INTO USERCOINFO (username, company, streetAddress, postalCode, language, department, postOfficeBox, country, telephoneNumber, faxNumber, title, givenName, surname) VALUES (?username, ?company, ?streetAddress, ?postalCode, ?language, ?department, ?postOfficeBox, ?country, ?telephoneNumber, ?faxNumber, ?title, ?givenName, ?surname)"
Dim dbInsert As New OleDb.OleDbCommand
Dim objClient = GetObject(objRecordSet.Fields("ADsPath").Value)
Dim username = objRecordSet.Fields("Name").Value
Dim company = objClient.company
Dim streetAddress = objClient.streetAddress
Dim postalCode = objClient.postalCode
Dim lo = objClient.l
Dim department = objClient.department
Dim postOfficeBox = objClient.postOfficeBox
Dim country = objClient.co
Dim telephoneNumber = objClient.telephoneNumber
Dim faxNumber = objClient.facsimiletelephonenumber
Dim title = objClient.title
Dim givenName = objClient.givenName
Dim surname = objClient.sn
dbInsert.Parameters.AddWithValue("@username", username)
dbInsert.Parameters.AddWithValue("@company", company)
如评论中所述和 Jim Hewitt 所建议的那样,这确实是语句中列声明中语法词的用法,我已将列名称更改为其他名称以进一步减少从语言到合作语言。现在一切正常。
感谢所有愿意为此提供帮助的人。
米普,
卢克
我正在处理一个带有数据库的项目,我正在尝试使用以下查询在我的 table 中创建一行:
"INSERT INTO USERCOINFO (username, company, streetAddress, postalCode, language, department, postOfficeBox, country, telephoneNumber, faxNumber, title, givenName, surname) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
这些值由以下变量使用
填充Dim dbInsert As New OleDb.OleDbCommand
Dim objClient = GetObject(objRecordSet.Fields("ADsPath").Value)
Dim username = objRecordSet.Fields("Name").Value
Dim company = objClient.company
Dim streetAddress = objClient.streetAddress
Dim postalCode = objClient.postalCode
Dim lo = objClient.lo
Dim department = objClient.department
Dim postOfficeBox = objClient.postOfficeBox
Dim country = objClient.co
Dim telephoneNumber = objClient.telephoneNumber
Dim faxNumber = objClient.facsimiletelephonenumber
Dim title = objClient.title
Dim givenName = objClient.givenName
Dim surname = objClient.sn
然后我将它们绑定为:
dbInsert.Parameters.AddWithValue("@p1", username)
dbInsert.Parameters.AddWithValue("@p2", company)
'and so on...
据我所知,这是正确的,但它仍然是 returns 语法错误:
The instruction INSERT contains a syntax error.
试试这个
"INSERT INTO USERCOINFO (username, company, streetAddress, postalCode, language, department, postOfficeBox, country, telephoneNumber, faxNumber, title, givenName, surname) VALUES (?username, ?company, ?streetAddress, ?postalCode, ?language, ?department, ?postOfficeBox, ?country, ?telephoneNumber, ?faxNumber, ?title, ?givenName, ?surname)"
Dim dbInsert As New OleDb.OleDbCommand
Dim objClient = GetObject(objRecordSet.Fields("ADsPath").Value)
Dim username = objRecordSet.Fields("Name").Value
Dim company = objClient.company
Dim streetAddress = objClient.streetAddress
Dim postalCode = objClient.postalCode
Dim lo = objClient.l
Dim department = objClient.department
Dim postOfficeBox = objClient.postOfficeBox
Dim country = objClient.co
Dim telephoneNumber = objClient.telephoneNumber
Dim faxNumber = objClient.facsimiletelephonenumber
Dim title = objClient.title
Dim givenName = objClient.givenName
Dim surname = objClient.sn
dbInsert.Parameters.AddWithValue("@username", username)
dbInsert.Parameters.AddWithValue("@company", company)
如评论中所述和 Jim Hewitt 所建议的那样,这确实是语句中列声明中语法词的用法,我已将列名称更改为其他名称以进一步减少从语言到合作语言。现在一切正常。
感谢所有愿意为此提供帮助的人。
米普, 卢克