MS Access SELECT和WHERE

时间:2009-11-03 09:55:09

标签: ms-access

我无法在特定日期从数据库中获取记录。这就是我目前的SQL命令:

SELECT * FROM ict1 WHERE date='26/03/1992'

它应该从我的数据库中返回一条记录。 “date”是一列,其中一条记录的值为'26/03 / 1992'。我测试了数据库连接,我可以使用:

SELECT * from ict1

所以我知道不是那样的。可能只是SQL语法有很多不同,我已经习惯了MySQL:@)

应该提一下,我正在使用带有OleDbConnection的.NET。

感谢。

3 个答案:

答案 0 :(得分:4)

通常日期需要格式化为访问,如下所示

Select * from ict1 where date= #03/26/1992#

#表示访问日期。 格式化为'10 / 03/1992'的日期要非常小心,因为它可能意味着10月3日或10月3日,具体取决于你所处的位置。

#1992/03/26#也有效

答案 1 :(得分:0)

将日期用作YYYY / MM / DD格式:

<击> SELECT * FROM ict1 WHERE date='1992/03/26'

SELECT * FROM ict1 WHERE date=#1992/03/26#

答案 2 :(得分:0)

您可能希望使用日期比较功能而不是date =#xxxx / xx / xx#。由于格式和数据类型问题,日期比较不会产生预期结果。在SQL Server中,您的日期可能存储为日期时间或日期数据类型。您需要确保以相同的类型和格式比较事物。

DateDiff(“d”,#1992/03/26#,日期)= 0