将变量传递给sql查询时,ms访问数据类型在条件表达式中不匹配

问题描述 投票:-1回答:1

我得到的数据类型与以下代码不匹配。但是,当我进行调试打印时它看起来很好。

Dim strSQL As String
Dim StartDate As Date
Dim EndDate As Date

StartDate = “1/1/2019”
EndDate = “2/1/2019”


strSQL = SELECT Table1.Start INTO 1 FROM Table1 WHERE (((Table1.Start) BETWEEN ‘“ & StartDate & “‘“ & “ AND ‘“ & EndDate & “‘));”

Debug.Print strSQL

Docmd.RunSQL strSQL 
sql ms-access access-vba
1个回答
1
投票

对日期和日期值表达式使用正确的语法:

Dim strSQL As String
Dim StartDate As Date
Dim EndDate As Date

StartDate = #1/1/2019#
EndDate = #2/1/2019#


strSQL = "SELECT Table1.Start INTO 1 FROM Table1 WHERE (((Table1.Start) BETWEEN #" & Format(StartDate, "yyyy\/mm\/dd") & "# AND #" & Format(EndDate, "yyyy\/mm\/dd") & "#);"
© www.soinside.com 2019 - 2024. All rights reserved.