Вниз
Скачать: CL | DM;

Delphi и Fox   Найти похожие ветки 

 
caesar   (2003-03-31 16:37) [0]

1-я проблема такая. Подключаюсь к «фоксовой» базе данных через ADO VFPOLEDB.1 провайдера. Не могу получить курсор из ADOStoredProc.
К примеру (на стороне VFoxPRO 7):
Cjdf
Parameters A,B,C

Return C
Где с – курсор.

А на стороне Delphi 7:
ADOStoredProc.ProcedureName:=’cjdf’;
ADOStoredProc.Parameters.ParamByName(‘a’).Value:=1;
ADOStoredProc.Parameters.ParamByName(‘b’).Value:=1;
ADOStoredProc.Open или ADOStoredProc.ExecProc или ADOStoredProc.Active:=true;
Естественно параметры описаны за ранее.
A – ftInteger;
B – ftInteger;
C – ftVariant; - Другие типы (ftCursor …) выбрать не получается.

2-я Проблема такая. Все та же БД и то же ADO. Пытаюсь выполнить два запроса в ADOQuery.
ADOQuery.Active:=false;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add(‘SELECT * FROM a.dbf WHERE … INTO CURSOR b;’);
ADOQuery.SQL.Add(‘SELECT * FROM b WHERE … INTO CURSOR c’);
ADOQuery.Active:=true;

Запрос отрабатывает, но вместо курсора «c» выдает курсор «b». На процедуру NextRecordSet ругается, говорит что «Текущий проводник не поддерживает возврата нескольких записей в результате выполнения одного действия».

Пожалуйста подскажите что я неправильно делаю и как можно решить эти проблемы!!!


 
sniknik ©   (2003-03-31 16:55) [1]

ADOQuery.SQL.Clear;
ADOQuery.SQL.Add(‘SELECT * FROM a.dbf WHERE … INTO CURSOR b;’);
ADOQuery.SQL.Add(‘SELECT * FROM b WHERE … INTO CURSOR c’);
ADOQuery.Active:=true;

вот это в OLEDB провайдере для VFP, не поддерживается (как только столкнулся с ним первое что в глаза бросилось, нет поддержки мультидатасетов)

(а в ODBC - шном есть, схалявили разработчики :-)))

так что решить проблемы можно перейдя на старый недобрый (а кто добрый?) ODBC драйвер. хотя процедуры я там не пробовал.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
1-54687
Intell
2003-04-04 15:00
2003.04.17
Как обратиться к нескольким компонентам за раз?


7-54918
IceMan_T
2003-02-19 15:07
2003.04.17
использование ASPI


3-54495
Veles
2003-03-31 09:18
2003.04.17
Перекодировка dbf


6-54779
Ruf
2003-02-25 15:42
2003.04.17
шлюз


1-54655
Сашко
2003-04-07 02:11
2003.04.17
Некорректная работа спамятью




   Наверх