繁体   English   中英

我的 Microsoft Access Append 查询(VBA 和 SQL)适用于文字,但不适用于变量

[英]My Microsoft Access Append Query (VBA and SQL) works for a literal, but not for a variable

这是 Microsoft Access、VBA 和 SQL 相关的。

在 VBA 中,我创建了这个 SQL 语句(见下文)并运行它。 这正确地附加到 testTable。 (testTable 中的字段是日期/时间,格式为 'mm/dd/yyyy hh:nn:ss')

sql = "INSERT INTO testTable (DateOpen) VALUES ('12/01/2021 12:13:14')

但是,当我这样做(如下)时,代码会提示我为 dateVar 输入“输入参数值”。 为什么? 我刚刚告诉它 SQL 中的 dateVar 是什么:

DIM dateVar as string

dateVar = "12/01/2021 12:13:14"

sql = "INSERT INTO testTable (DateOpen) VALUES (dateVar)

当我添加引号(见下文)时,代码不会提示我输入参数值 msgbox。 我收到一个消息框,上面写着你即将到达 Append。 但是,当它尝试 append 时,由于“类型转换错误”,它会失败并显示“Microsoft Access Can't Append the Records”

DIM dateVar as string

dateVar = "12/01/2021 12:13:14"

sql = "INSERT INTO testTable (DateOpen) VALUES ('dateVar')

请帮忙??

您需要修复将dateVar变量连接到 SQL 字符串中:

Dim dateVar as string

dateVar = "12/01/2021 12:13:14"

sql = "INSERT INTO testTable (DateOpen) VALUES ('" & dateVar & "')"

如果您在构建 SQL 时遇到问题,那么Debug.Print sql会让您看到实际执行的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM