MSACCESS datetime SQL запрос
Привет. Я из Индии (возможно, это как-то связано с информацией о культуре здесь). Я построение приложения рабочего стола в C#.Net 2010, Экспресс-выпуск с MS-Access 2010, русская версия 32 бит, как серверной. Я использую OLEDB для подключения к БД.
У меня есть столбец с именем dt as Date/Time, который имеет следующие значения:
20-09-2016 22:53:32<br /> 19-08-2016 22:54:24<br /> 20-09-2016 22:56:01<br /> 22-09-2016 22:56:27<br /> 22-09-2016 22:56:41
Мне нужно получить записи по дате, месяцу и Году.
До сих пор я не могу завершить часть даты, поэтому не могу работать над месяцем и годом. Ниже приведен мой код:
b.com.CommandText = "SELECT * FROM srvtrans WHERE DateTime.Parse(dt)=@a ORDER BY sno DESC"; b.com.Parameters.Add("@a", dtp_srdmy.Value.ToShortDateString()); Show(dtp_srdmy.Value.ToShortDateString()); b.con.State == ConnectionState.Closed) con.Close(); mytemp = new DataTable(); da.Fill(mytemp);
Я также попробовал следующие варианты:
WHERE CONVERT(VARCHAR(10),dt,111)=@a WHERE CONVERT(VARCHAR(10),dt,101)=@a WHERE dt LIKE '%@a%' WHERE DateTime.Parse(dt)=@a WHERE dt=DateValue(@a) WHERE CAST(dt AS DATE)=@a WHERE CONVERT(varchar, dt, 101)=@a WHERE DATE(dt)=@a WHERE dt=@a
но ни один из них не работает на меня. Пожалуйста, ответьте, какое обновление должно быть сделано в sql-запросе для извлечения записей по дате, месяцу и Году. Заранее спасибо.
Что я уже пробовал:
Я также попробовал следующие варианты:
WHERE CONVERT(VARCHAR(10),dt,111)=@a WHERE CONVERT(VARCHAR(10),dt,101)=@a WHERE dt LIKE '%@a%' WHERE DateTime.Parse(dt)=@a WHERE dt=DateValue(@a) WHERE CAST(dt AS DATE)=@a WHERE CONVERT(varchar, dt, 101)=@a WHERE DATE(dt)=@a WHERE dt=@a
[no name]
"Выберите * из srvtrans, где DateTime.Parse (dt)=@A ORDER BY sno DESC"; не уверен, почему вы думаете, что это сработает DateTime.Синтаксический анализ .Net код не SQL. должно быть что-то вроде
"SELECT * FROM srvtrans WHERE dt=@A ORDER BY sno DESC";
Member 8057273
Я уже упоминал об этом в вопросе, что я уже пробовал эту вариацию