【问题标题】:ms access 2013 vba join or concat values from multiple values list boxms从多个值列表框中访问2013 vba连接或连接值
【发布时间】:2022-05-19 23:23:31
【问题描述】:

我有一个表单 FORM1,其中一个字段名为 FIELD1,它是一个包含许多值的列表框,它被配置为多选 = 扩展。 我想通过 ODBC 将此表单中的数据插入到 MS SQL 服务器数据库和表中。

如果表在 MS ACCESS 中,我如何将其配置为具有多值字段。

但在 MS sql server 中我不知道。

我有个主意; 当用户从该列表框中选择值,并按保存记录按钮时,将要连接或连接的值用分隔符连接;例如或 - (没关系)并加入要写入 SQL 服务器字段的文本。

例子:

FIELD1 values:
             Val1
             Val2
             Val3
             Val4

用户选择 Val1, Val3, Val4 VBA中的onClick事件是这样的

SQLSTRING = [forms]![FORM1].[FIELD1].value.join(';')

因此 MS SQL TABLE 被写入 Val1;Val3;Val4

之后

insert into MSSQLTABLE set MSSQLFIELD = SQLSTRING 

如何配置表单保存SQLSTRING vs FIELD1

【问题讨论】:

  • 这是一种糟糕的数据存储方式。单个单元格中的多个值是一场噩梦。您应该适当地对其进行规范化并具有三行。

标签: sql-server vba ms-access


【解决方案1】:

三个单独的字段甚至可能比所有字段更好。

但是,如果您确实必须:代码必须遍历列表框并连接。
点评:Allen Browne - listbox

【讨论】:

    猜你喜欢
    • 2020-10-01
    • 1970-01-01
    • 2018-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多