как искать данные с помощью текстового поля в базе данных в vb.net
это мой код, но когда я нажимаю на поиск, появляется ошибка! Пожалуйста помочь..
спасибо
<pre lang="vb">
Private Sub Button1_Click(бывал отправитель как система.Объект, бывал е как система.EventArgs) Обрабатывает Button1.Щелчок
ds = новый набор данных
таблицы = ds.Tables
да = новый объект oledbdataadapter("Select * из AMORLITO где _name = '" &амп; текстовое поле textbox1.Текст &ампер; "'", кон) 'элементы поменять на название вашей базы данных
Если da.Fill(ds, "AMORLITO"), то 'измените элементы на имя вашей базы данных
Тусклый вид как новый DataView(таблицы(0))
файлы source1.Источник данных = вид
DataGridView1.DataSource = просмотр
Еще
MsgBox("нет данных!")
Конец, Если
Конец Подводной Лодки
Kaushik S Murthy
В чем заключается ошибка, которую вы получаете?
Richard Deeming
Ваш код уязвим для SQL-инъекция[^].
НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.
Member 11566968
Синтаксическая ошибка в выражении запроса '_name = "'
это мой первый раз в программировании. ^^,
Member 11566968
каковы примеры параметризованного запроса?Я новичок спасибо
Member 11566968
большое вам спасибо, как я могу связать имя?
Richard Deeming
Вам нужно будет объяснить это - связать его с чем?
Member 11566968
я хочу вводить только буквы. пример я ввожу "а" все имеют букву "А" в базе данных _name, будут запрашивать и показывать в моем datagridview.
Richard Deeming
Итак, вы хотите использовать Like
сравнение, а не ан =
?SELECT * FROM AMORLITO WHERE [_name] Like '%' + ? + '%'
Member 11566968
"Выбрать * из AMORLITO где [_name] как '*' + '" &амп; текстовое поле textbox1.Текст &ампер; "' + '*' "
никаких данных, не так ли?
Richard Deeming
Нет, вам нужно использовать параметризованный запрос.
Member 11566968
спасибо, Ричард. Теперь я понимаю. ^^