我正在使用一个带有Paradox的Odbc驱动程序。我有一张桌子,上面有日期。我正在尝试按该列中的日期进行查询。我似乎不能让where子句起作用。我可以通过int来搜索记录,但是我不知道如何使用date time。
OdbcCommand comm= new OdbcCommand("SELECT * FROM [Journal] WHERE" +
"[Date] = 04/02/2009 ",
new OdbcConnection(@"Driver={Microsoft Paradox Driver (*.db )};DriverID=538;Fil=Paradox 5.X;DefaultDir=d:\\ics\\tables\\HISTORY;Dbq=d:\\ics\\tables\\HISTORY;CollatingSequence=ASCII"));
OdbcDataAdapter adapt = new OdbcDataAdapter(comm);
DataTable table = new DataTable();
adapt.Fill(table );发布于 2009-04-03 15:00:07
好了,我想通了。
...where [Date] = {d 'yyyy-MM-dd'} AND...在odbc中,您必须使用{}来定义对象,而d定义日期的格式。
您可以使用以下代码。
{d 'value'} yyyy-mm-dd
{t 'value'} hh:mm:ss
{ts 'value'} yyyy-mm-dd hh:mm:ss
发布于 2009-04-03 14:33:16
在Paradox中寻找可以将字符串转换为日期的日期/时间函数。使用字符串作为日期非常棘手,就像在SQL中一样。必须有一些像TO_DATE或类似的函数可以为您正确地格式化它。
https://stackoverflow.com/questions/714123
复制相似问题