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

Множественный оператор SELECT для DataAdapter   Найти похожие ветки 

 
oslep   (2005-08-14 11:19) [0]

Друзья, прошу прощения за ре-директ, но не могли бы вы взглянуть:

http://delphimaster.net/view/13-1124001775/


 
sniknik ©   (2005-08-14 11:35) [1]

ну взглянул, легче стало? ;о))

если выполнить
select * from Employees; select * from Customers;
в MSSQL получиш 2 рекордсета (при условии что такие таблици есть...)

а если выполнить тоже самое в IB6.x ? скорее всего получиш ошибку и ни одного рекордсета... (при том же условии. таблици есть)

этот SQLDataAdapter скорее всего строит отношения по полученным рекордсетам, которых IB6 не возврашает, т.что менять надо его. на то что ближе к стандартам мелкософта, и тоже может выдавать список рекодсетов... (вернее там не список а указатель в первом на второй и т.д. пока не null).


 
oslep   (2005-08-14 13:33) [2]

Отношения вроде строятся уже в DataSet. Да, в общем непонятно, но работать не хочет. То есть не пойму пока как получить два нобора данных чтобы потом построить мастер-деталь в компоненте DataGrid. Ручками придется, однако. Ну ладно, спасибо


 
sniknik ©   (2005-08-14 15:57) [3]

> Отношения вроде строятся уже в DataSet.
но ты же используеш (в вопросе) готовый обьект SQLDataAdapter, который ожидает (судя по запросу) двойной рекордсет на вход (выполняет запрос и ждет). т.е. чтобы по NextRecordSet там был еще один. а выполняя такойже запрос в IB он не только не получает нужной структуры но и вообще ничего не получает... (попытка выполнения двойного запроса вернет ошибку а не нужную структуру)
кстати про ошибку. приведение возвращаемой ошибки многое бы прояснило/уточнило...

> чтобы потом построить мастер-деталь
а вот это совсем другое дело, при мастер-детайл используется 2 различных набора данных, с раздельными запросами, которые отработают на любом, практически, sql сервере. это ты сам можеш настраивать. это не встроенные средства обьекта. не надо сравнивать.

> Ручками придется, однако.
однако да.


 
oslep   (2005-08-14 16:50) [4]


> попытка выполнения двойного запроса вернет ошибку а не нужную
> структуру

Так и происходит


> при мастер-детайл используется 2 различных набора данных, с
> раздельными запросами


А вот именно такие запросы в примере и приведены - две таблицы, связанные по какому-то ID. И именно по NextRecordSet строятся две вложенные таблицы в DataSet [DataAdapter.Fill()]. Манипулируя объектом DataSet.Relations выстраивается структура, отображаемая затем в DataGrid

А.. ладно, разберемся



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

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



Память: 0.46 MB
Время: 0.024 c
14-1125992539
KilkennyCat
2005-09-06 11:42
2005.09.25
6 сентября. С Днем рождения!


6-1116495332
BanderLog
2005-05-19 13:35
2005.09.25
IdTCPServer - Terminate Thread Timeout


8-1113917203
Petrush
2005-04-19 17:26
2005.09.25
Dspack + Tv tuner -> картинка есть, где звук?


5-1099875575
AZ
2004-11-08 03:59
2005.09.25
Сохранение свойства типа array - линкер не пущает


2-1124434319
Ande
2005-08-19 10:51
2005.09.25
Можна ли добавлять динамически пункты меню в MainMenu?




   Наверх