Нужно в приложении на c# получить ID только что обновлённой записи в MS Access, т.к. потом этот ID будет использоваться в других таблицах. БД создана в MS Access 2007. Пытаюсь сделать так:
string root_query = "UPDATE root_tasks SET s_process_time=@s_process_time, s_time_left=@s_time_left OUTPUT INSERTED.ID WHERE s_task_name=@s_task_name";
cmd.Parameters.AddRange(new OleDbParameter[]
{
new OleDbParameter("@s_process_time", time),
new OleDbParameter("@s_time_left", time_left),
new OleDbParameter("@s_task_name", node.Name)
});
int root_id = 0;
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
root_id = (int)reader["ID"];
}
}
Но при попытке выполнить запрос вылетает исключение
System.Data.OleDb.OleDbException (0x80040E14): Ошибка синтаксиса (пропущен оператор) в выражении запроса '@s_time_left OUTPUT INSERTED.ID'.
Подскажите, что не так в синтаксисе запроса и как это исправть?
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Проблема с VS 2015Со вчерашнего дня время на выполнение 350 юнит-тестов проекта на моей машине увеличилось с 2 до 40 минут
Необходимо загрузить конкретную часть/блок/элемент со стороннего сайтаСайт: https://www