Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];




Вниз

IBQuery + Edit 


Malyatkoya   (2002-01-21 21:46) [0]

Добрый вечер Метры баз данных! Появилась проблема которую не могу решить:((( А суть ее такова:есть база данных в которой в одной из таблиц находятся имена фирм заказчиков и другая информация о этой фирме.Необходимо написать запрос который при вводе в поле Еdit1 названия фирмы выводил бы в DBGride отображал название этой фирмы и другую информацию.Но при этом чтобы выполнялось условие, что при вводе например первых двух букв из названий фирмы и нажатии кнопки выводился бы список фирм в которых эти две буквы есть в начале названия фирмы.
При вводе трех... и т.д.
Пробовал сделать так:

procedure TForm1.Button1Click(Sender: TObject);
begin
IBQuery1.close;
iBQuery1.sql.Clear;
IBQuery1.SQL.Add("select * from firm");
IBQuery1.SQL.Add("where firm ="+Edit1.text+"");
IBQuery1.open;
end;

Но как результат получал пустую строку:(

Не знает ли кто как решить данную проблему?
Буду очень признателен за помощь. С ув. Malyatko.



Сержик   (2002-01-21 23:34) [1]

IBQuery1.SQL.Add("where firm like ""+Edit1.text+"%"");



Hawk2   (2002-01-22 10:01) [2]

TO Malyatko:
У меня похожая задача, только нужно написать телефонный справочник но всё лень. Мне тоже нужно чтобы при вводе одной буквы появлялись Фамилии людей которые начинаются на эту букву, при вводе ещё одной происходила фильтрация по двух буквах и т.д. Я пробовал делать так: обрабатывать не щелчек по кнопке, а метод OnKeyUp, получается набрал букву метод отработал и данные сразу же видаются (как в справочной системе Windows). А на счет кода то нужно вот так:
IBQuery1.SQL.Add("where firm like ""+Edit1.text+"% "");



User_OKA   (2002-01-22 14:42) [3]

to Hawk2
А событие OnChange того же TEdit не подойдет?



Hawk2   (2002-01-23 09:49) [4]

TO User_OKA:
Незнаю не пробовал. Я могу объяснить почему OnKeyUp, дело в том что я пробовал OnKeyDown, но получается с тормозами, например набрал 1-ю букву не фильтруется, набрал вторую фильтруется по первой, набрал третью фильтруется по первым двум и т.д. А OnKeyUp работает нормально.



User_OKA   (2002-01-23 12:23) [5]

to Hawk2
Событие OnChange наступает всякий раз при изменении TEdit.Text. Поэтому отпадает необходимость мучиться с кодами клавиш в OnKeyUp. Если же нужно отслеживать ввод, то можно использовать TMaskEdit (там тоже OnChange).




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.02 c
4-57242           Shark                 2001-12-18 15:25  2002.02.18  
HELP!


3-56994           _РК                   2002-01-09 08:08  2002.02.18  
Нужен совет.


1-57041           km                    2002-02-01 14:39  2002.02.18  
Помогите


4-57256           Вопрошающий           2001-12-19 17:34  2002.02.18  
Хочу системные иконки! Ну очень хочу.


3-57004           pum5a                 2002-01-24 00:54  2002.02.18  
BLOB и SQL запрос