PDA

View Full Version : پرکردن یک مرحله ای یک دیتاست با چند کوئری



iran400
شنبه 11 اسفند 1386, 15:07 عصر
سلام
بنده یک دیتاست دارم که به روش زیر دارم تیبل داخلش می ریزم.

Command.CommandText = "SELECT * from ebook";
DataAdapter.SelectCommand = Command;
DataAdapter.Fill(ds, "a");
Command.CommandText = "select * from test";
DataAdapter.SelectCommand = Command;
DataAdapter.Fill(ds, "b");
Command.CommandText = "select * from test2";
DataAdapter.SelectCommand = Command;
DataAdapter.Fill(ds, "c");

چطور می توانم این 3 تا کوئری را در یک مرحله وارد دیتاست کنم؟
ممنون می شوم راهنمایی نمایید.

iran400
یک شنبه 12 اسفند 1386, 14:30 عصر
سلام
بنده یک دیتاست دارم که به روش زیر دارم تیبل داخلش می ریزم.

Command.CommandText = "SELECT * from ebook";
DataAdapter.SelectCommand = Command;
DataAdapter.Fill(ds, "a");
Command.CommandText = "select * from test";
DataAdapter.SelectCommand = Command;
DataAdapter.Fill(ds, "b");
Command.CommandText = "select * from test2";
DataAdapter.SelectCommand = Command;
DataAdapter.Fill(ds, "c");

چطور می توانم این 3 تا کوئری را در یک مرحله وارد دیتاست کنم؟
ممنون می شوم راهنمایی نمایید.

بابا خیلی کارم گیره
جواب بدید دیگه

tthenry14plus
پنج شنبه 16 اسفند 1386, 01:06 صبح
اگر همین الان مقدار Datasource دیتا گرید رو برابر ds قرار بدی هر سه جدولت با هم در یک دیتا گرید نمایش داده می شه.

اما دو روش دیگه هم وجود داره :
OUTER JOIN و JOIN :

ساختار هر دوش یکیه ولی یک فرق داره که می گم:


Select t1.name,t1.family,t2.age,t2.id from property1 t1,property2 t2
where t1.id = t2.id Group by t1.id

کد بالا ساختار JOIN بود که حاصل دو جدول را با هم ترکیب کرد و براساس id جدول اولی مرتب کرد. t1 نام مجازی جدول اول و t2 نام مجازی جدول دوم است

ساختار OUTER JOIN تنها فرقی که با JOIN داره در علامت (+) است بدین صورت :



Select t1.name,t1.family,t2.age,t2.id from property1 t1,property2 t2
where t1.id = t2.id (+) Group by t1.id


حالا فرق خروجی این دو در چیست:

در JOIN، خروجی، حاصل ترکیب رکوردهایی است که در هر دو جدول وجود دارند و رکوردی که مشترک نباشد نمایش داده نمی شود ولی در OUTER JOIN علاوه بر نمایش فیلدهای مشترک، فیلدهای غیرمشترک نیز نمایش داده می شوند.

امیدوارم که مشکلتون حل شده باشه.