Запрос SQL для программы поиска в vb.net - PullRequest
0 голосов
/ 21 октября 2011

Попытка выяснить, как правильно запрашивать базу данных MySql и найти пользовательскую переменную из свойства Textbox.Text.Я не уверен, что поставить для предложения where для поиска совпадений в каждой ячейке каждой строки.Я посмотрел на объединение и содержит, но ни один из них не имеет смысла для меня, и я не уверен, являются ли они моим лучшим вариантом.Я думаю, что строка запроса будет выглядеть примерно так:

SELECT * FROM table WHERE (I dont know) = '" & searchBarTextVariable & "'

Ответы [ 2 ]

1 голос
/ 21 октября 2011

Без динамического решения будет указывать каждый столбец, который вы хотите найти.Это довольно фундаментальная часть работы с реляционной базой данных;MySQL не является исключением.

Как уже упоминалось в комментарии @ jadarnel27, вы должны вместо этого использовать параметры.Что-то вроде:

SELECT *
FROM table
WHERE someColumnA = @searchBarTextVariable
   OR someColumnB = @searchBarTextVariable
   OR someColumnC = @searchBarTextVariable
   OR someColumnD = @searchBarTextVariable
0 голосов
/ 21 октября 2011

Нет определенного синтаксиса для поиска во всех столбцах, вы должны перечислить их по отдельности. Вы можете написать запрос следующим образом.

SELECT * FROM table WHERE 
Field1 = '" & searchBarTextVariable & "'
OR Field2 = '" & searchBarTextVariable & "'
OR Field3 = '" & searchBarTextVariable & "'
OR Field4 = '" & searchBarTextVariable & "'
...

Вы должны перечислять только те поля, которые на самом деле являются текстовыми, или избегать ошибок преобразования. Также следите за внедрением SQL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...