Ms access MS Access选择和位置

Ms access MS Access选择和位置,ms-access,Ms Access,我在从数据库中获取特定日期的记录时遇到问题。这是我目前使用的SQL命令: SELECT * FROM ict1 WHERE date='26/03/1992' 它应该从我的数据库中返回一条记录。日期是一列,其中一条记录的值为'26/03/1992'。我已经测试了db连接,我可以使用: SELECT * from ict1 所以我知道不是这样。可能只是SQL语法有很大不同,我习惯MySQL:@ 应该提到的是,我正在使用带有OLEDB连接的.NET 谢谢。使用YYYY/MM/DD格式的日期: 从

我在从数据库中获取特定日期的记录时遇到问题。这是我目前使用的SQL命令:

SELECT * FROM ict1 WHERE date='26/03/1992'
它应该从我的数据库中返回一条记录。日期是一列,其中一条记录的值为'26/03/1992'。我已经测试了db连接,我可以使用:

SELECT * from ict1
所以我知道不是这样。可能只是SQL语法有很大不同,我习惯MySQL:@

应该提到的是,我正在使用带有OLEDB连接的.NET


谢谢。

使用YYYY/MM/DD格式的日期:

从ict1中选择*,其中日期='1992/03/26'


从ict1中选择*,其中日期=1992/03/26

使用YYYY/MM/DD格式的日期:

从ict1中选择*,其中日期='1992/03/26'


从ict1中选择*,其中日期=1992/03/26

通常需要格式化日期,以便进行如下访问

Select * from ict1 where date= #03/26/1992#
表示访问中的日期。 对格式为“10/03/1992”的日期要非常小心,因为它可能意味着3月10日或10月3日,具体取决于您所在的位置


同样,1992/03/26也可以使用

通常日期需要格式化,以便如下访问

Select * from ict1 where date= #03/26/1992#
表示访问中的日期。 对格式为“10/03/1992”的日期要非常小心,因为它可能意味着3月10日或10月3日,具体取决于您所在的位置


同样,1992/03/26也可以使用

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


DateDiff d,1992/03/26,date=0

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


DateDiff d,1992/03/26,date=0

日期列的类型是什么?这就是access中表中日期列的类型?我已经对这两个答复发表了评论。日期列的类型是什么?这就是access中表中日期列的类型?我已经对这两个答复发表了评论。access中的日期分隔符是哈希,而不是引号。access中的日期分隔符是哈希,而不是引号。使用yyyy/mm/dd更安全,因为无论您的语言环境在哪里,它对access和用户都是明确的。@Remou-I aggree。我被以前日期的格式所吸引。ISO格式在某些上下文中会中断访问,尽管不是这个上下文,因此通常建议使用d-mmm-yyyy或类似的格式,其中月份以字母而不是数字表示。坦率地说,我认为首先使用格式是错误的,而只是用DateSerial传递日期,这是永远不会出错的。当然,在这种情况下,通过OLEDB是不起作用的。使用yyyy/mm/dd更安全,因为无论您的语言环境在哪里,它对访问和用户都是明确的。@Remou-I aggree。我被以前日期的格式所吸引。ISO格式在某些上下文中会中断访问,尽管不是这个上下文,因此通常建议使用d-mmm-yyyy或类似的格式,其中月份以字母而不是数字表示。坦率地说,我认为首先使用格式是错误的,而只是用DateSerial传递日期,这是永远不会出错的。当然,在这种情况下,通过OLEDB是不起作用的。