从文本框表单中将多行插入到单个表中 - Access 2010

Posted

技术标签:

【中文标题】从文本框表单中将多行插入到单个表中 - Access 2010【英文标题】:Insert multiple rows into a single table from a textbox form - Access 2010 【发布时间】:2015-04-01 08:26:15 【问题描述】:

我有一个带有单个字段(定义为数字)的表格,我想在表格中从文本框中插入多行。代码是:

Private Sub CmdImportID_Click()

Dim strSQL As String

  strSQL = "DELETE * FROM [Con_ID futcanc BAMB]"  
  DoCmd.RunSQL strSQL

  strSQL = "INSERT INTO [Con_ID futcanc BAMB] (con_id) VALUES (" & Me!conID & ");"   
  DoCmd.RunSQL strSQL    
 End Sub

问题是:它适用于文本框中的单个数字,但是当我尝试插入多个数字时,我收到“运行时错误'3075':查询表达式中的语法错误(缺少运算符)”。 如何修改代码以插入更多数据?抱歉,我对 vba 编码不是很熟练 :(

提前谢谢你。

【问题讨论】:

(" & >Me!conID & ") 中的 ">" 字符是一个错误,代码没有它.. 【参考方案1】:

您编写的代码用于单行插入,它只会运行一次。如果 Textbox 中的数字存在分隔符,则通过使用分隔符拆分 Text 并在 DB 中作为单独的行插入来循环遍历每个数字。

一般

INSERT INTO [Con_ID futcanc BAMB] (con_id) VALUES (1)

将只插入一行并且

INSERT INTO [Con_ID futcanc BAMB] (con_id) VALUES (1,2) 是无效语句。

编辑:

请参阅以下链接了解拆分和循环代码逻辑

Split and Loop

【讨论】:

好的,谢谢!以及如何修改多行的代码? 参考编辑答案

以上是关于从文本框表单中将多行插入到单个表中 - Access 2010的主要内容,如果未能解决你的问题,请参考以下文章

如何在一条语句中将多行插入 DB2?

使用单个 INSERT 语句将多行插入到表中

在单个实例中将 pig 输出存储到 Hive 表中

将多行绑定到文本框以进行编辑+更新

向表中插入多行 - Access

将控件值(多行文本框、NumericUpDowns、复选框)保存到文件/从文件中加载