Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Delphi 7+ Access 2003


Автор: krobs 13.2.2006, 14:13
Товарищи, подскажите, пожалуйста в чём проблема:
1) Создал таблицу в файле OBdan.mdb
2) Подключил БД Access 2003 к Delphi 7 через TADOConnection (поставщик OLE DB - Microsoft Jet 4.0 OLE DB Provider ) - всё прошло ОK! Все данные при нажатии соответствующик Button в Delphi 7, охраняются, удаляются, вставляются, выводятся в DBGrid1!
3) Решил создать запрос черз ADOQuery1, в RadioGroup1 выбираешь нужный параметр запроса (FIO или DateRogdenia,... ) в Edit пишеш соответствующий запрос; нажимаешь кнопку "запрос" появляется ошибка Немогу найти файл D:\BD\OBdan.mdb
4) В свойстве SQL, компонента ADOQuery1, прописал Select * from OBdan.mdb order by FIO
5) При попытке Изменить свойство Active на true, появляется таже ошибка.

P.S. Тоже самое, только с использование БД Paradox 7, через BDE - работает!

procedure TForm1.Button2Click(Sender: TObject); //процедура кнопики "запрос"
var
strField:string;
begin
case RadioGroup1.ItemIndex of
0: strField:='FIO';
1: strField:='DateRogdenia';
2: strField:='Adres';
3: strField:='OtchislenDate';
4: strField:='OtchislenPrichina';
5: strField:='OtchislenNOPrikaz';
6: strField:='PostuplenDate';
7: strField:='PostuplenNOPrikaz';
8: strField:='NG';
9: strField:='OkonchanDate';
10: strField:='OkonchanNOPrikaz';
11: strField:='RezaltGosExam';
end;

ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * from OBdan.mdb where '+strField+' LIKE "'+Edit1.Text+'%"');
ADOQuery1.Open;
DataSource1.DataSet:=ADOQuery1;
end;

Автор: DimW 13.2.2006, 14:32
начнем с того что для таблиц paradox БД является каталог, а access файл.
ты же не пишешь для paradox: select * from каталог, а пишешь select * from каталог\файл.

применительно к access запрос будет такой: select * from имя_таблицы(файл), а в качестве каталога является TADOConnection, если конечно можно провести такую аналогию...
вобшем надо так:
Код

ADOQuery1.Close;
ADOQuery1.SQL.Clear; 
ADOQuery1.SQL.Add('Select * from имя_таблицы where '+strField+' LIKE "'+Edit1.Text+'%"');
ADOQuery1.Open;
DataSource1.DataSet:=ADOQuery1;




Автор: sexton 13.2.2006, 17:42
Цитата(DimW @ 13.2.2006, 14:32 Найти цитируемый пост)
а access файл.

smile Классно опечатался smile

Автор: DimW 14.2.2006, 09:22
Цитата(sexton @ 13.2.2006, 17:42 Найти цитируемый пост)
Классно опечатался 


сам охренел!!! сори!!! smile
это должно было выглядить так - "начнем с того что для таблиц paradox БД является каталог, а для access файл".

в предь буду внемательнее!
krobs, надеюсь ты понял что я тебя матерьть нехотел!!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)