使用的2000的access数据库如下连接数据库:
Set G_ConnServer = New ADODB.Connection
With G_ConnServer
.Mode = adModeUnknown
.Provider = "Microsoft.Jet.OLEDB.4.0"
.Properties("Jet OLEDB:Database Password") = "welcome"
.Open "Data Source=" & App.path & "\" & "management"
End With然后这么查询:
dim sqlstr As String '查询语句
sqlstr = "select * from comlog_table where overdatetime between #04-9-1# and #04-9-2 23:59:59#"
Set logRec = New ADODB.Recordset
logRec.CursorLocation = adUseClient
logRec.Open sqlstr, G_ConnServer, adOpenStatic, adLockOptimistic实际数据库中记录的时间是overdatetime =#04-9-2 14:20:12#
也就是说上面的查询肯定能查到记录,但是实际上在2000下没有问题,但是在98下查询不到!!
修改上述查询为:
sqlstr = "select * from comlog_table where overdatetime between #04-9-4# and #04-9-5 23:59:59#"
却能在98中查找到overdatetime =#04-9-2 14:20:12#的数据,早于#04-9-5#的结束时间都不能查到!
如果问题解决了,还可以加分啊!!!!!!在线等!!!!
Set G_ConnServer = New ADODB.Connection
With G_ConnServer
.Mode = adModeUnknown
.Provider = "Microsoft.Jet.OLEDB.4.0"
.Properties("Jet OLEDB:Database Password") = "welcome"
.Open "Data Source=" & App.path & "\" & "management"
End With然后这么查询:
dim sqlstr As String '查询语句
sqlstr = "select * from comlog_table where overdatetime between #04-9-1# and #04-9-2 23:59:59#"
Set logRec = New ADODB.Recordset
logRec.CursorLocation = adUseClient
logRec.Open sqlstr, G_ConnServer, adOpenStatic, adLockOptimistic实际数据库中记录的时间是overdatetime =#04-9-2 14:20:12#
也就是说上面的查询肯定能查到记录,但是实际上在2000下没有问题,但是在98下查询不到!!
修改上述查询为:
sqlstr = "select * from comlog_table where overdatetime between #04-9-4# and #04-9-5 23:59:59#"
却能在98中查找到overdatetime =#04-9-2 14:20:12#的数据,早于#04-9-5#的结束时间都不能查到!
如果问题解决了,还可以加分啊!!!!!!在线等!!!!
sqlstr = "select * from comlog_table where overdatetime between #2004-9-1# and #2004-9-2 23:59:59#"
而且,我的程序不是2000和98共同访问一个数据库,而是在98和2000下分别有数据库的。
调整日期格式为:#yyyy-MM-dd# ,问题解决,谢谢!!