Я выполняю этот запрос
select * from measTbl where dateone>'201112100000' and dateone<'202001010000' and netcd<>99
в 32-битном приложении c # MVC, работающем на win7 64bit на сервере PostgresSQL, с использованием 32-битного драйвера ODBC psqlODBC 9.00.0310. Я всегда получаю эту ошибку:
ERROR [42601] ERROR: syntax error at or near "201112100000";
Error while executing the query
.net код, который я использую, это
OdbcConnection conn = new OdbcConnection();
conn.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["CSPOSTGRES"].ToString(); ;
OdbcCommand comm = new OdbcCommand();
comm.Connection = conn;
conn.Open();
var strData= System.DateTime.Today.AddDays(-(double)giorni).ToString("yyyyMMdd")+"0000";
var commandText=String.Format ("select * from measTbl where dateone >'{0}' and dateone<'202001010000' and netcd<>99", strData);
comm.CommandText = strData;
OdbcDataReader reader = comm.ExecuteReader();
Самое странное, что если я использую 64-битное приложение winforms с 64-битным драйвером, тот же самый запрос работает отлично.
Я должен использовать 32-битную версию, поэтому использование 64-битной версии невозможно.
есть идеи?
спасибо.