Я пытаюсь создать приложение в Visual Studio 2015, где я подключаюсь к базе данных и отображаю результаты в DataGridView. Он включает в себя панель поиска, которую я включил на экране Задачи DataGridView, которая фильтрует DataGridView на основе результатов поиска.
У меня есть SQL-запрос (фильтрует базу данных на основе FirstName
), присоединенный к DataGridView.
Когда я проверяю поиск только по первой букве столбца FirstName
, ничего не появляется (он возвращает результат только в том случае, если я ввожу точную FirstName
одной из строк в моей базе данных). Я связал подстановочный знак в своем запросе SQL, поэтому даже если я выполнял поиск только по первой букве имени, результаты все равно должны отображаться.
Что происходит?
SQL-запрос кажется правильным, потому что я проверил свой запрос в SQL Server на свою базу данных, и когда я добавил запрос в свой DataGridView (используя кнопку «Выполнить запрос» в «Построителе запросов»). Возвращает ожидаемые результаты. Я даже дважды проверил запрос в наборе данных, чтобы убедиться, что это точный запрос.
Я подключен к базе данных, потому что могу успешно отобразить набор данных для моего DataGridView.
SQL-запрос:
SELECT
*
FROM
Doctor
WHERE
(FirstName LIKE @FirstName + '%')
Когда я выполняю поиск в строке поиска, при наборе букв (например, «j», «je») результаты не отображаются, но когда я набираю имя, точно такое же, как оно существует в базе данных (например, ». Джен "), результат обнаруживается.
Поскольку к моему запросу присоединен символ «%» (подстановочный знак), поиск по «j» и «je» не работает, но должен, не так ли?
Редактировать: я получил это работает вчера. Я не думаю, что я изменил какой-либо код (на самом деле это код по умолчанию, который генерируется при создании DataGridView и добавлении запроса). Программа перестала работать, как ожидалось, сегодня, что странно.