0

我有一个例程从我的数据库中提取数据(没什么花哨的)。我希望它提取“StartDate”列是未来某个日期的行。下面的代码会拉取所有行,而不仅仅是未来的行。

我知道我正在做的事情一定很愚蠢,但我无法弄清楚。

在此先感谢,
克雷格

代码:

Printda = New OleDbDataAdapter("SELECT * FROM tblShows WHERE StartDate > " & Format(Now, "Short Date"), cn)

更新代码:

Printda = New OleDbDataAdapter("SELECT * FROM tblShows WHERE StartDate > '" & Now.ToString("Short Date") & "'", cn)

更正的代码:

Printda = New OleDbDataAdapter("SELECT * FROM tblShows WHERE StartDate > Now()", cn)
4

1 回答 1

0

尝试这个:

"SELECT * FROM tblShows WHERE StartDate > #" & Now.ToString("MM/dd/yyyy") & "#"

在 SQL Server 中,这是默认的日期格式。在 Oracle 中是YYYY-MM-DD. 使用适合您需要的格式,或者如果您不想关心格式并为查询提供安全性,请使用参数。

或者您可以简单地使用适当的函数来获取实际日期:

"SELECT * FROM tblShows WHERE StartDate > now()"
于 2013-07-02T10:14:35.730 回答