|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Помогите реализовать поиск по базе данных 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; Заранее благодарен Последний раз редактировалось Putin666, 28.04.2009 в 16:53. |
#2
|
||||
|
||||
В DataSource1 св- во DataSet = ADOQuery1 ?
|
#3
|
|||
|
|||
У меня стоит так....
DataSource1 св- во DataSet = ADOTable1 Если ставлю ADOQuery1 ругается В ADOQuery1 св- во DataSet = ADOTable1 так написанно Последний раз редактировалось Putin666, 29.04.2009 в 23:18. |
#4
|
||||
|
||||
Цитата:
На что ругается? Откуда В ADOQuery1 св- во DataSet? |
#5
|
|||
|
|||
ADOQuery1, DataSource раскрой и там будет DataSet.
Если DataSource1 св- во DataSet ставлю ADOTable1 ругается не дает записать это значение. Если реально заинтересован помочь мне погу скинуть программу. |
#6
|
||||
|
||||
Цитата:
Цитата:
|
#7
|
|||
|
|||
Прогу выслал на указанную почту.
|
#8
|
||||
|
||||
Сделай так:
ADOQuery1 св-во DataSource = пустое (просто оставь пустым) DataSource1 св-во DataSet = ADOQuery1 (появиться в выпадающем списке) просмотрел бегло, в понедельник гляну более подробно, если не поможет. Последний раз редактировалось TOJluK, 03.05.2009 в 23:00. |
#9
|
|||
|
|||
Вот программа.
|
#10
|
||||
|
||||
Putin666, отправил подправленную версию.
|
#11
|
|||
|
|||
Цитата:
|