PDA

View Full Version : یافتن نام جداول از Dataset



omidmehraban
شنبه 26 مرداد 1387, 19:36 عصر
با عرض سلام و احترام خدمت دوستان گرامی:
من میخوام اطلاعات رو از چند تا جدول بگیرم.این کار رو با دستورات زیر انجام می دهم:


Using da As New SqlDataAdapter("SELECT * FROM Customers;SELECT * FROM Orders", conn)
ds.Clear()
da.Fill(ds)

For Each table As DataTable In ds.Tables
MsgBox(table.TableName)
Next
End Using
اما نام جداول داخل Dataset با اسامی جداول در پایگاه داده یکی نیست.
اگر تنها یک جدول بود میشد با دستور زیر درستش کرد.من به اسامی واقعی جداول نیاز دارم.:عصبانی++:


da.Fill(DataTable,"TableName")

درواقع نام جداول در Dataset به صورت 'Table1'و 'Table2 'و... است.

سوال:آیا راهی وجود داره تا هنگام استفاده از عبارت DataTabe.TableName،مقدار Customers برگشت داده بشه؟؟

ali_md110
دوشنبه 28 مرداد 1387, 01:58 صبح
Dim CNN As OleDbConnection
Dim DAP As OleDbDataAdapter
Dim DS As DataSet
DS = New DataSet
Dim cnnstr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\db.mdb"
CNN = New OleDbConnection(cnnstr)
DAP = New OleDbDataAdapter("select * from table1", cnnstr)
DAP.Fill(DS, "table1")
DAP = New OleDbDataAdapter("select * from table2", cnnstr)
DAP.Fill(DS, "table2")
DAP = New OleDbDataAdapter("select * from table3", cnnstr)
DAP.Fill(DS, "table3")

ComboBox1.DataSource = DS.Tables("table3")
ComboBox1.DisplayMember = "des"
ComboBox1.ValueMember = "id"

DAP.Dispose()
تکه کد بالا شما رو راهنمایی میکنه اگر دقت کنید 3 جدول در دیتاست موجوده که میتونی هر لحظه کومبو باکس رو بایند کنی به هر کدوم از جدولها مثل:

ComboBox1.DataSource = DS.Tables("table3
ComboBox1.DataSource = DS.Tables("table1
ComboBox1.DataSource = DS.Tables("table2