Выберите элемент в базе данных Access - PullRequest
0 голосов
/ 17 мая 2019

Я ищу строку в таблице в базе данных Access.Поле строки должно быть определенным значением, которое вводит использование.

С

OleDbCommand myQuery = new OleDbCommand("Select * from [Job Control] where [Job No] like '%" + job_search_value + "%';", myConn);

Я получаю данные обратно, но все, что содержит значение job_search_value.Что мне нужно, так это строка таблицы с полем, равным job_search_value.Поле [Job No] имеет значение Int и пытается

OleDbCommand myQuery = new OleDbCommand("Select * from [Job Control] where [Job No]=" + job_search_value + ";", myConn);

и

OleDbCommand myQuery = new OleDbCommand("Select * from [Job Control] where [Job No]=" + Convert.ToInt32(job_search_value) + ";", myConn);

С этими двумя командами я не получаю никакой ошибки, такой как Data mismatch, но неТакже не получить никаких данных.

1 Ответ

0 голосов
/ 17 мая 2019

вы должны и должны использовать параметры sql для решения вашей проблемы, а также во избежание внедрения SQL. Попробуйте:

OleDbCommand myQuery = new OleDbCommand("Select * from [Job Control] where [Job No]=@param", myConn);
myQuery.Parameters.Add("@param"SQlDbType.Int).Value = int.Parse(job_search_value);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...