![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Делаю программу, которая добавляет из базы данных пользователей на сервер в определенную группу, права и так далее.
Нужно: Совершить поиск по базе данных или же фильтрацию; Пытался сделать через 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
|
|||
|
|||
|
Цитата:
|