【发布时间】: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