Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: ".Net";
Текущий архив: 2009.12.06;
Скачать: [xml.tar.bz2];

Вниз

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

 
oslep   (2005-08-14 10:42) [0]

Дорбый день! Вот текст примера из книги Пачеко о Дельфи 8:

program FillDataSet;

{$APPTYPE CONSOLE}

{%DelphiDotNetAssemblyCompiler "c:\windows\microsoft.net\framework\v1.1.4322\System.Data.dll"}

uses
 System.Data,
 System.Data.SqlClient;

const
 c_cnstr = "server=XWING;database=Northwind;Trusted_Connection=Yes";
 c_sel_emp = "select * from Employees; select * from Customers;";
var
 sqlDA: SqlDataAdapter;
 nwDS: DataSet;
begin
 sqlDA := SQLDataAdapter.Create(c_sel_emp, c_cnstr);
 nwDS  := DataSet.Create;

 sqlDA.Fill(nwDS);
end.


Прошу обратить внимание на строчку

 c_sel_emp = "select * from Employees; select * from Customers;"

По словам автора, такой оператор возвращает две таблицы на одном объекте DataAdapter. Результат должен позволить построить отношения мастер/деталь встроенными способами. Пример приведен для класса SQLDataAdapter и сервера SQL, которым мне не доводилось пользоваться.  Аналогичный прием для InterBase/FB не проходит.
В чем проблема? Необходимо ли применить отличный от приведенного в примере синтакс в c_sel_emp?

ЗЫ: Долго думал, в какую конференцию кидать))


 
k2 ©   (2005-08-15 11:16) [1]

наверное нельзя сказать "две таблицы на одном объекте DataAdapter", таблицы принадлежат DataSet"у. про интербэйс ничего не подскажу, но раз он не поддерживает возврат нескольких наборов данных, то построить датасет с двумя таблицами так:
...
 c_sel_emp = "select * from Employees";
 c_sel_cust ="select * from Customers";
...
var
 da: SqlDataAdapter;
 ds: DataSet;
begin
 da := SQLDataAdapter.Create(c_sel_emp, c_cnstr);
 ds := DataSet.Create;
 da.Fill(ds, "emp");
 da.SelectCommand.CommandText := c_sel_cust;
 da.Fill(ds , "cust");
 ..
end;


 
oslep   (2005-08-17 17:11) [2]


> k2 ©   (15.08.05 11:16) [1]

Разумеется



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

Форум: ".Net";
Текущий архив: 2009.12.06;
Скачать: [xml.tar.bz2];

Наверх















Память: 0.82 MB
Время: 0.019 c
1-1227699997
leonon
2008-11-26 14:46
2009.12.06
#ИМЯ? вместо функции при загрузке книги Excel


15-1254837325
VladOfMonster
2009-10-06 17:55
2009.12.06
Срочно. Установка wine в Linux


15-1254491780
Unknown user
2009-10-02 17:56
2009.12.06
Чтение/запись PSD (Photoshop) формата


15-1254855575
TRSteep
2009-10-06 22:59
2009.12.06
Смена хеша пароля


2-1255773566
dplz
2009-10-17 13:59
2009.12.06
Цвет выделенный строк в combobox без csOwnerDrawFixed





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский