Odbc Paradox Driver ГДЕ предложение Дата
Я использую драйвер Odbc с Paradox. У меня есть таблица с датой. Я пытаюсь сделать запрос по дате в этом столбце. Кажется, я не могу получить предложение where для работы. Я могу получить поиск записей по целым числам, но я не знаю, как использовать дату и время.
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 );
2 ответа
Решение
Хорошо, я понял это.
...where [Date] = {d 'yyyy-MM-dd'} AND...
В odbc вы должны использовать {} для определения объекта, а d определяет формат даты.
Вы можете использовать следующее.
{d 'value'} гггг-мм-дд
{т 'значение'} чч: мм: сс
{ts 'value'} гггг-мм-дд чч: мм: сс
Ищите функции даты / времени в Paradox, которые преобразуют строку в дату. Очень сложно использовать строку в качестве даты, как в вашем SQL. Там должны быть некоторые функции, такие как TO_DATE или аналогичные, которые будут правильно отформатировать его для вас.