执行带有日期的SQL Where语句时出现问题

本文关键字:语句 问题 Where SQL 行带 日期 执行 | 更新日期: 2023-09-27 18:25:25

当我在Access 2010中对值进行硬编码并执行SQL语句时,将执行该命令并返回所需的值。

SELECT [Event ID], [Crowd Size], [Event Name] FROM Event WHERE ([Event Date]=#8/11/2012#) AND ([Event Name]="Peter")

然而,当我使用文本框代替硬编码值时

("SELECT [Event ID], [Crowd Size], [Event Name] FROM [Event] WHERE ([Event Name]='" + textBoxEventName.Text + "') AND ([Event Date]=#" + textBoxEventDate.Text + "#)");

当试图从数据读取器读取时,它无法做到这一点,因为其中似乎没有任何值。

我已经在调试模式下完成了代码,文本框中的值是正确的,但仍然没有发生。

执行带有日期的SQL Where语句时出现问题

Access运行的SQL查询有点棘手。。。

确保你要抢的日期是正确的格式,或者给它指定一个你自己的格式。

http://msdn.microsoft.com/en-us/library/az4se3k1.aspx(标准日期和时间格式字符串)

还要确保有所有必要的引号,并且你没有使用任何"保留字"

http://support.microsoft.com/kb/286335(Access中的保留字列表)

试试这个:看看这个页面:http://www.tizag.com/sqlTutorial/sqlselect.php

经过数小时的处理,

解决方案是Access SQL喜欢格式的日期

#YYYY/MM/DD#