У меня есть файл DBF, и я пытаюсь прочитать его из кода С#. Я могу успешно читать файлы без применения каких-либо условий или применения условий для полей типа varchar. Моя проблема в том, что мне нужно фильтровать записи из поля даты (тип: дата). Я пробовал следующие способы,
SELECT * FROM D:\DBFreader\file.dbf where [RDATE] between 2/16/2006 12:00:00 AM and 2/20/2006 12:00:00 AM
выше дает синтаксическую ошибку: отсутствует оператор
SELECT * FROM D:\DBFreader\file.dbf where [RDATE] between '2/16/2006 12:00:00 AM' and '2/20/2006 12:00:00 AM'
выше дает ошибку несоответствия типа данных
SELECT * FROM D:\DBFreader\file.dbf where [RDATE] between 2/16/2006 and 2/20/2006
выше не выдает никаких исключений, но и не возвращает никаких записей, хотя есть совпадающие записи.
То же самое происходит и с предложением where. Что я могу сделать, чтобы отфильтровать записи из диапазона
Я использую следующий код, чтобы прочитать его
OdbcCommand cmd = new OdbcCommand();
OdbcDataAdapter da = new OdbcDataAdapter();
DataTable dt = new DataTable();
using (OdbcConnection connection = new OdbcConnection(connstring))
{
connection.Open();
cmd = new OdbcCommand(@"SELECT * FROM D:\DBFreader\file.dbf where [RDATE] between 2/16/2006 12:00:00 AM and 2/20/2006 12:00:00 AM", connection);
cmd.CommandType = CommandType.Text;
da.SelectCommand = cmd;
da.Fill(dt);
}