Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 09.02.2012, 13:24
Andrew_MSK Andrew_MSK вне форума
Прохожий
 
Регистрация: 25.11.2011
Сообщения: 28
Репутация: 10
По умолчанию помогите с выводом данных

необходимо из бд Mysql выводить данные при поиске в грид... с учетом радиобокса
при использовании locate все работает, но показывается 1 найденная запись и только, а как сделать чтобы показывались другие значения (к примеру повторяющиеся фамилии)... нагуглил что нужно делать фильтр и sql select... но как именно сделать не понимаю...
сейчас код такой
Код:
procedure TForm2.rg1Click(Sender: TObject);
begin
  if rg1.ItemIndex=0 then  i:= 'NOMER' ;
  if rg1.ItemIndex=1 then  i:= 'FAM'  ;
  if rg1.ItemIndex=2 then  i:= 'PULT' ;
  if rg1.ItemIndex=3 then  i:= 'UL'    ;
  if rg1.ItemIndex=4 then  i:= 'TELDOM';
  if rg1.ItemIndex=5 then  i:= 'TELSOT';
end;

procedure TForm2.btn2Click(Sender: TObject);
begin
if not DataModule1.ZTable1.Locate(i, TRIM(Edt1.Text),[loPartialKey, loPartialKey])
 then ShowMessage('not dound');
end;
.
как сделать поиск с учетом radiogroup (выбор поля) и с учетом Edt1.Text куда будут вноситься значения
ПОМОГИТЕ!!! очень нужно 2 дня голову ломаю...ни шагу вперед(((
Ответить с цитированием
  #2  
Старый 13.02.2012, 10:37
Аватар для friz
friz friz вне форума
Местный
 
Регистрация: 04.04.2008
Адрес: Минск
Сообщения: 596
Версия Delphi: 2007 & JAVA EE
Репутация: 10670
По умолчанию

Код:
DataModule1.ZTable1.filter := 'field = '+''''+Edt1.Text+'''';
DataModule1.ZTable1.filtered;

p.s. возможно надо будет добавить uppercase
__________________
Последний раз редактировалось Admin, Сегодня в 10:32.
Ответить с цитированием
  #3  
Старый 13.02.2012, 12:21
Andrew_MSK Andrew_MSK вне форума
Прохожий
 
Регистрация: 25.11.2011
Сообщения: 28
Репутация: 10
По умолчанию

Уважаемые Форумчане... никак не получается сделать запрос((((
Помогите пожалуйста!!!!
Ответить с цитированием
  #4  
Старый 13.02.2012, 12:22
Andrew_MSK Andrew_MSK вне форума
Прохожий
 
Регистрация: 25.11.2011
Сообщения: 28
Репутация: 10
По умолчанию

Цитата:
Сообщение от friz
Код:
DataModule1.ZTable1.filter := 'field = '+''''+Edt1.Text+'''';
DataModule1.ZTable1.filtered;

p.s. возможно надо будет добавить uppercase

не работает... (не ищет)
ругается на "DataModule1.ZTable1.filtered;"
а также на uppercase(((
эххх((( а я уж обрадовался...
Ответить с цитированием
  #5  
Старый 13.02.2012, 12:38
Andrew_MSK Andrew_MSK вне форума
Прохожий
 
Регистрация: 25.11.2011
Сообщения: 28
Репутация: 10
По умолчанию

также пытался сделать так:

Код:
procedure TForm2.rg1Click(Sender: TObject);
begin
  if rg1.ItemIndex=0 then  i:= 'NOMER' ;
  if rg1.ItemIndex=1 then  i:= 'FAM'  ;
  if rg1.ItemIndex=2 then  i:= 'PULT' ;
  if rg1.ItemIndex=3 then  i:= 'UL'    ;
  if rg1.ItemIndex=4 then  i:= 'TELDOM';
  if rg1.ItemIndex=5 then  i:= 'TELSOT';
end;

procedure TForm2.btn2Click(Sender: TObject);

begin
  DataModule1.ZQuery1.Close;
  DataModule1.ZQuery1.SQL.Clear;
  DataModule1.ZQuery1.SQL.Add('Select * from tbl where  i like "Иванов" ');
DataModule1.ZQuery1.Open;
end;

тоже не работает
Ответить с цитированием
  #6  
Старый 13.02.2012, 13:31
Andrew_MSK Andrew_MSK вне форума
Прохожий
 
Регистрация: 25.11.2011
Сообщения: 28
Репутация: 10
По умолчанию

есть идея...что у меня... zquery работает...т.к. программа не ругается... но в грид ничего не выводится.... как связать грид и запрос!?

сейчас zcoonection к базе mysql
через zcoonection соединяется ztable и выводит данные в dbgrid через dataset....

Пожалуйста помогите....
Ответить с цитированием
  #7  
Старый 13.02.2012, 15:12
Аватар для friz
friz friz вне форума
Местный
 
Регистрация: 04.04.2008
Адрес: Минск
Сообщения: 596
Версия Delphi: 2007 & JAVA EE
Репутация: 10670
По умолчанию

Цитата:
Сообщение от Andrew_MSK
не работает... (не ищет)
ругается на "DataModule1.ZTable1.filtered;"
а также на uppercase(((
эххх((( а я уж обрадовался...
а малость подумать?
DataModule1.ZTable1.Filtered:=true;
__________________
Последний раз редактировалось Admin, Сегодня в 10:32.
Ответить с цитированием
  #8  
Старый 13.02.2012, 16:26
Andrew_MSK Andrew_MSK вне форума
Прохожий
 
Регистрация: 25.11.2011
Сообщения: 28
Репутация: 10
По умолчанию

Цитата:
Сообщение от friz
а малость подумать?
DataModule1.ZTable1.Filtered:=true;

он ни на что не ругается...но просто все значения при поиске из грида удаляются...(((

даже если делаю поиск без использования радиогрупп

нагуглил еще вот такой код, результат такой же
Код:
DataModule1.ZTable1.Filter:='FAM LIKE '+ #39 + edt1.Text + '%' + #39;
Ответить с цитированием
  #9  
Старый 13.02.2012, 18:27
Аватар для friz
friz friz вне форума
Местный
 
Регистрация: 04.04.2008
Адрес: Минск
Сообщения: 596
Версия Delphi: 2007 & JAVA EE
Репутация: 10670
По умолчанию

Код:
procedure TForm1.Edit1Change(Sender: TObject);
begin
DataModule1.ZTable1.Filter:= [foCaseInsensitive];
DataModule1.ZTable1.Filter:='FAM = '''+'*' + edit1.Text + '*'+'''';
DataModule1.ZTable1.Filtered:=true;
end;
__________________
Последний раз редактировалось Admin, Сегодня в 10:32.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 22:50.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter