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

 



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 28.04.2009, 12:11
Putin666 Putin666 вне форума
Прохожий
 
Регистрация: 28.04.2009
Сообщения: 6
Репутация: 10
Сообщение Помогите реализовать поиск по базе данных Access средствами Delphi

Делаю программу, которая добавляет из базы данных пользователей на сервер в определенную группу, права и так далее.

Нужно:
Совершить поиск по базе данных или же фильтрацию;


Пытался сделать через SQL, но почему то не получается... данные, которые отвечают требованиям поиска не высвечиваются DBGrid1, ошибок ни че не выдает как будто запрос проходит, а вывода данных нет.
На форме использую компоненты ADOQuery1, ADOTable1, DataSource1, ADOConnection1

Отрывок кода поиска:
Код:
procedure TForm1.Edit8Change(Sender: TObject);
var
 strField:string;
begin
 if not CheckBox1.Checked then Exit;
 // выбрать поле поиска
 case RadioGroup1.ItemIndex of
  0: strField:='Name';
  1: strField:='LastName';
  2: strField:='№_stud';
 end;
 // выполнить поиск
 ADOQuery1.Locate(strField,Edit8.Text,[loCaseInsensitive,loPartialKey]);
end;

procedure TForm1.Edit7Change(Sender: TObject);
var
 strField:string;
begin
 if not CheckBox1.Checked then Exit;
 // выбрать поле поиска
 case RadioGroup1.ItemIndex of
  0: strField:='Name';
  1: strField:='LastName';
  2: strField:='№_stud';
 end;
 // выполнить поиск
 ADOQuery1.Close;                              
 ADOQuery1.SQL.Clear;                 
 ADOQuery1.SQL.Add('Select * from users where '+strField+' LIKE "'+Edit7.Text+'%"');
 ADOQuery1.Open;
 ADOQuery1.FieldByName('Name').DisplayLabel:='Name';
 ADOQuery1.FieldByName('LastName').DisplayLabel:='LastName';
 ADOQuery1.FieldByName('№_stud').DisplayLabel:='№_stud';
end;

 procedure TForm1.CheckBox1Click(Sender: TObject);
begin
 if CheckBox1.Checked=true
 then
  begin
   CheckBox1.Caption:='Режим поиска включен';
   Edit7.SetFocus;
    end
 else CheckBox1.Caption:='Режим поиска выключен';
 end;
Admin: Теги и еще раз теги!

Заранее благодарен

Последний раз редактировалось Putin666, 28.04.2009 в 16:53.
Ответить с цитированием
  #2  
Старый 29.04.2009, 18:03
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

В DataSource1 св- во DataSet = ADOQuery1 ?
Ответить с цитированием
  #3  
Старый 29.04.2009, 23:15
Putin666 Putin666 вне форума
Прохожий
 
Регистрация: 28.04.2009
Сообщения: 6
Репутация: 10
По умолчанию

У меня стоит так....
DataSource1 св- во DataSet = ADOTable1
Если ставлю ADOQuery1 ругается
В ADOQuery1 св- во DataSet = ADOTable1 так написанно

Последний раз редактировалось Putin666, 29.04.2009 в 23:18.
Ответить с цитированием
  #4  
Старый 01.05.2009, 01:16
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Цитата:
Сообщение от Putin666
У меня стоит так....
DataSource1 св- во DataSet = ADOTable1
Если ставлю ADOQuery1 ругается
В ADOQuery1 св- во DataSet = ADOTable1 так написанно

На что ругается?
Откуда В ADOQuery1 св- во DataSet?
Ответить с цитированием
  #5  
Старый 01.05.2009, 22:57
Putin666 Putin666 вне форума
Прохожий
 
Регистрация: 28.04.2009
Сообщения: 6
Репутация: 10
По умолчанию

ADOQuery1, DataSource раскрой и там будет DataSet.
Если DataSource1 св- во DataSet ставлю ADOTable1 ругается не дает записать это значение. Если реально заинтересован помочь мне погу скинуть программу.
Ответить с цитированием
  #6  
Старый 02.05.2009, 13:21
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Цитата:
Сообщение от Putin666
ADOQuery1, DataSource раскрой и там будет DataSet.
это уже св-во не Query, a DataSorce`a
Цитата:
Сообщение от Putin666
Если реально заинтересован помочь мне погу скинуть программу.
Можешь кинуть Sortir@tut.by, или тут ссылку выложи.
Ответить с цитированием
  #7  
Старый 02.05.2009, 20:43
Putin666 Putin666 вне форума
Прохожий
 
Регистрация: 28.04.2009
Сообщения: 6
Репутация: 10
По умолчанию

Прогу выслал на указанную почту.
Ответить с цитированием
  #8  
Старый 03.05.2009, 22:51
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Сделай так:
ADOQuery1 св-во DataSource = пустое (просто оставь пустым)
DataSource1 св-во DataSet = ADOQuery1 (появиться в выпадающем списке)

просмотрел бегло, в понедельник гляну более подробно, если не поможет.

Последний раз редактировалось TOJluK, 03.05.2009 в 23:00.
Ответить с цитированием
  #9  
Старый 03.05.2009, 23:19
Putin666 Putin666 вне форума
Прохожий
 
Регистрация: 28.04.2009
Сообщения: 6
Репутация: 10
По умолчанию

Вот программа.
Вложения
Тип файла: rar Прога версия1.rar (52.1 Кбайт, 42 просмотров)
Ответить с цитированием
  #10  
Старый 04.05.2009, 10:04
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Putin666, отправил подправленную версию.
Ответить с цитированием
  #11  
Старый 04.05.2009, 10:51
Putin666 Putin666 вне форума
Прохожий
 
Регистрация: 28.04.2009
Сообщения: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от TOJluK
Putin666, отправил подправленную версию.
Огромное при огромное тебе спасибо.... очень сильно выручил....
Ответить с цитированием
Ответ



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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources", 2004-2019

ВКонтакте   Facebook   Twitter