ADODB SQL 字符串给我一个错误

ADODB SQL string gives me an error

StartDate3 = Format(StartDate1, "dd/mm/yyyy hh:mm:ss")
EndDate3 = Format(EndDate1, "dd/mm/yyyy hh:mm:ss")

Dim cn As Object
Dim rs As ADODB.Recordset

Set cn = CreateObject("ADODB.Connection")
Set sqlConnect = New ADODB.Connection
Set rs = New ADODB.Recordset

sqlConnect.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="SOURCE";Persist Security Info=False;"

cn.Open sqlConnect

rs.ActiveConnection = cn

Sql = "SELECT * FROM [tblDatabase] WHERE [Meldt Dato] BETWEEN '" & StartDate3 & "' AND '" & EndDate3 & "';"

rs.Open Sql, cn, adOpenDynamic, adLockOptimistic

With rs

End With

它给我一个挪威语的错误,所以我不确定它用英语会说什么,但粗略翻译它说 "No agreement between datatypes in expression" 或类似的东西 :p

将代码更改为:

Sql = "SELECT * FROM [tblDatabase] WHERE [Meldt Dato] BETWEEN #" & StartDate1 & " # AND # " & EndDate1 & " #;"

这似乎做到了!

您不需要这个 00:00:00,散列 # 标签是关键。