Некоторая помощь будет оценена.Получение expiredate из таблицы, если оно равно или меньше, чем сегодня. SQL Server CE
У меня есть таблица tblItem
с колоннами ExpireDate
(DateTime
), AlertDays
(Int
).
В каждую позицию I insert есть expiredate
, Я хочу быть предупреждены в течение x дней до expiredate
.
Я хочу рассчитать все пункты, где today + alertdays <= ExpireDate
.
У меня есть следующий код, но он вызывает ошибку:
There was an error parsing the query. [ Token line number = 1,Token line offset = 48,Token in error = select ]
Пожалуйста, смотрите мой код:
internal static int getAlertDateExpire()
{
SqlCeConnection con = ConectionAndData.Con;
if (con.State == System.Data.ConnectionState.Closed)
con.Open();
int number = 0;
string sqlCommand = "select count(*) from tblItem where (Getdate()+(select AlertDays from tblItem)) As today <= ExpireDate Order By ItemName ASC";
SqlCeCommand com = new SqlCeCommand(sqlCommand, con);
try
{
number = (Int32)com.ExecuteScalar();
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
}
return number;
}
Ashkan Mobayen: Я попробовал ваше предложение и получил это сообщение об ошибке: Произошла ошибка при разборе запроса. [Номер линии токена = 1, смещение линии токена = 50, токен в ошибке = выбор] –
@PlazzaSele Я обновил код. и, кстати, для получения счета вам не нужен запрос 'order by'. –
Ashkan: Спасибо за вашу помощь, но все еще вызывают ошибку: SqlCeException был пойман: произошла ошибка в разборе запроса. [Номер линии токена = 1, смещение линии токена = 50, токен в ошибке = выберите] –