У меня возникла ошибка с ошибкой, написанной выше, и не удается найти точный способ ее исправить.Не могу понять, как исправить ошибку синтаксиса (отсутствующий оператор) в ошибке выражения запроса в C#
OleDbDataAdapter dataAdapter = new OleDbDataAdapter("Select count(*) from [contractors$] where " + category + " like '*@name*'", eh.Connection);
dataAdapter.SelectCommand.Parameters.Add("@name", OleDbType.VarChar).Value = "*" + name + "*";
OleDbCommand command = dataAdapter.SelectCommand;
OleDbDataReader reader = command.ExecuteReader();
Точная ошибка ..
Синтаксическая ошибка (отсутствующий оператор) в выражении запроса 'как' @name ''.
Я также уже искал решения этой проблемы и попытались приспособить их, чтобы попытаться получить эту работу работу, но не повезло (один выше, был один из попыток)
Много заранее спасибо!
Хорошо, так что я теперь изменить код на это ..
OleDbDataAdapter dataAdapter = new OleDbDataAdapter("Select count(*) from `contractors$` where " + category + " LIKE @name", eh.Connection);
dataAdapter.SelectCommand.Parameters.Add("@name", OleDbType.VarChar).Value = "%" + name + "%";
OleDbCommand command = dataAdapter.SelectCommand;
OleDbDataReader reader = command.ExecuteReader();
Но я все еще получаю ту же ошибку.
Что такое значение 'category'? Можете ли вы опубликовать полный SQL после его оценки? –
значение категории изменилось в зависимости от выпадающего меню, однако для целей тестирования это «статус» и, конечно, как только я получу это, я опубликую решение – Raider00321
Я имею в виду: «Отладка. WriteLine (sql); 'затем опубликуйте, что вы получаете. См. Здесь: http://support.microsoft.com/kb/815788 –