![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема с SQL SELECT [D6, Paradox]
страж © (2003-02-11 10:12:00)Есть поле EDIT
Туда заносится несколько букв фамилии
Как правильно для SELECT установить условие LIKE по значению EDIT что бы он правильно выполнял фильтрацию ??
SELECT * from student WHERE fio LIKE "edit.text" - не выбирает вообще((
Страж (2003-02-11 12:12:00) [1]Спасибо.. получилось
Илагодарю Вас
Соловьев (2003-02-11 11:58:00) [2]Object Inspector->Query1->SQL
SELECT * FROM student WHERE Fio LIKE :FIO_c
Потом в проге такой код:
with Query1 do
begin
Close;
ParamByName("FIO_c").AsString := Edit1.Text;
if not Prepared then
Prepare;
Open
end;
Соловьев (2003-02-11 11:52:00) [3]
>
> form2.Query1.sql.Clear;
>
убери это.
и не Fio_1 , а FIO_c
Страж (2003-02-11 11:47:00) [4]form2.Query1.close;
query1.ParamByName("FIO_c").AsString:= Edit1.Text;
query1.prepare;
form2.Query1.sql.Clear;
form2.Query1.SQL.Add("SELECT * FROM student WHERE Fio LIKE :FIO_c ");
всё равно выдает Query1: parameter fio_1 not found
Nikolay M. (2003-02-11 10:22:00) [5]
> Соловьев © (11.02.03 10:15)
> Нужно:
> "SELECT * from student WHERE fio LIKE "" " + Edit.Text+"
> "" "
Однако "%" не помешали бы:
"SELECT * from student WHERE fio LIKE "" %" + Edit.Text+" %"" "
Туда заносится несколько букв фамилии
passm (2003-02-11 10:19:00) [6]страж © (11.02.03 10:12)>
SELECT *
FROM STUDENT
WHERE FIO LIKE "%" || :FIO_CONT || "%"
И перед открытием заполни ParamByName("FIO_CONT").AsString:= Edit.Text
Соловьев (2003-02-11 10:15:00) [7]Да, парень, ну такое тоже бывает...
Нужно:
"SELECT * from student WHERE fio LIKE "" " + Edit.Text+" "" "
Mike Kouzmine (2003-02-11 10:14:00) [8]SELECT * from student WHERE fio LIKE :fio
q1.close;
q1.params[0].asString := Edit1.text;
q1.prepare;
q1.open;