【问题标题】:How do I add multiple fields in the same row in SQL (ms Access)?如何在 SQL (ms Access) 的同一行中添加多个字段?
【发布时间】:2014-10-19 10:37:51
【问题描述】:

我花了两天时间,我似乎仍然无法解决它。

这是我当前在 VBA 中有效的代码,但仅适用于一个字段。我试图修改它以使其适用于多个字段,但没有这样做。

Dim SQL as String

SQL = "INSERT INTO tblProviders (Provider) " _
& "VALUES(" _
& "'" & Me!txtProvider & "' ) "

DoCmd.RunSQL

tblProviders 是我选择的表,Provider 是我的字段,txtProvider 是用户插入信息的位置。

如果我执行以下操作,我会收到错误:

Dim SQL As String

SQL = "INSERT INTO tblProviders (Provider, Adress) VALUES (" & Me.txtProvider & "," & Me.txtAdress & ")"

DoCmd.RunSQL SQL

以下内容也不起作用,因为它只是创建了 2 个新行,而不是将它们全部添加到同一行:

Dim SQL1 as String

SQL1 = "INSERT INTO tblProviders (Provider) " _
& "VALUES(" _
& "'" & Me!txtProvider & "' ) "

DoCmd.RunSQL SQL1

Dim SQL as String

SQL2 = "INSERT INTO tblProviders (Provider) " _
& "VALUES(" _
& "'" & Me!txtAdres & "' ) "

DoCmd.RunSQL SQL2

【问题讨论】:

  • 您遇到的错误是什么?
  • 我得到一个参数窗口,无论我插入什么,它都不会被推送到我的表中,即使它询问我是否可以追加一行。
  • 您说您遇到了错误?有什么错误?
  • 编译错误:语法错误
  • 你能在这里分享错误吗...这会很有帮助...

标签: mysql sql sql-server vba


【解决方案1】:

当你构建你的字符串时,你需要为最终 SQL 语句中的引号做计划。试试这个:

SQL = "INSERT INTO tblProviders (Provider, Adress) VALUES ('" & _
         Me.txtProvider & "', '" & Me.txtAdress & "')"  
'print the result for control
debug.Print SQL  

我在双引号 " 中使用单引号 ',例如 "'Hi'"
也可以将内部双引号加倍,例如 """Hi""" ,但我觉得它不可读。

【讨论】:

  • 感谢您的快速反馈,但这给了我绿色文本,就像评论 postimg.org/image/pgyw0fvzn
  • 我收到运行时错误 3075:查询表达式中的语法错误(缺少运算符)
  • 固定在第一行的末尾
猜你喜欢
  • 2012-06-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-04
相关资源
最近更新 更多