Форум: "Базы";
Поиск по всему сайту: 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.013 c
1-57112           MAN-IN-RED            2002-02-02 21:32  2002.02.18  
Какие форматы знает MediaPlayer?


3-56995           vopros                2002-01-22 15:03  2002.02.18  
Опять paradox. опять индексы...Теперь пишет Index is ReadOnly


1-57140           Lion                  2002-02-03 19:54  2002.02.18  
StringGrid


3-57029           Garmahis              2002-01-23 20:36  2002.02.18  
Работа с базами MS SQL Server.


14-57221          ProfiUgl              2001-12-27 16:07  2002.02.18  
Откуда можно скачать Update Pack 1 для Delphi5 и ADO Express Update 1 и 2