我用ADO建立数据库连接,使用sql语句时有问题,就是对日期约束时不能正确处理,如下SELECT * FROM 表1 WHERE 出生年月 > 1985-1-1所产生的结果不正确SELECT * FROM 表1 WHERE 出生年月 = 1985-1-1这个就找不到那个记录,确实有这个记录的,是不是出了什么问题?我是用recordset在open的时候直接执行sql语句的。
SELECT * FROM 表1 WHERE 出生年月 > 1985-1-1 在sql server中你那样写可能能执行查询,得到预期的结果 在access中,得到的是不正确的结果。 在access中,使用类似 SELECT * FROM 表1 WHERE 出生年月 > #1985-1-1# 的方式,能得到正确的结果俺认为,最好的方式是使用datediff函数SELECT * FROM 表1 WHERE datediff("d",date1,date2) > nnn
哦,原来这样,不过这个不太明SELECT * FROM 表1 WHERE datediff("d",date1,date2) > nnndatediff是什么?还有其他的数据库,如sybase等有这样的问题吗?
regsvr32 MSDATGRD.OCX只是目录不同而已试试啦
在sql server中你那样写可能能执行查询,得到预期的结果
在access中,得到的是不正确的结果。
在access中,使用类似
SELECT * FROM 表1 WHERE 出生年月 > #1985-1-1#
的方式,能得到正确的结果俺认为,最好的方式是使用datediff函数SELECT * FROM 表1 WHERE datediff("d",date1,date2) > nnn
第一个参数 "d" 表示 比较“天”
第二、三个参数是时间