DataTables ins DataSet einlesen

14/02/2008 - 19:27 von Karsten Sosna | Report spam
Hallo NG,
kann man nicht mehere Tabellen aus einer DB in ein Dataset einlesen? Meine
Versuche ergeben Anzahl der Gesamtspalten in einer DataTable:
\\\
Dim ds As New DataSet
Dim cn As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data
Source=M:\Music\MusicDataBase.mdb")
cn.Open()
Dim da As New OleDb.OleDbDataAdapter("SELECT * FROM Category, Artists,
Albums, Titles", cn)
Dim dcb As New OleDb.OleDbCommandBuilder
dcb.DataAdapter = da
da.Fill(ds)
cn.Close()
For Each dt As DataTable In ds.Tables
Console.WriteLine(dt.Columns.Count)
Next
///
Ist irgendwie auch verstàndlich, wenn man sich den SelectCommand anschaut.
Ich möchte nur einfach alle 4 Tabellen auf einmal in das Dataset laden.

Danke für jede Hilfe.
Gruß Scotty
 

Lesen sie die antworten

#1 Peter Fleischer
14/02/2008 - 20:32 | Warnen spam
"Karsten Sosna" schrieb im Newsbeitrag
news:

kann man nicht mehere Tabellen aus einer DB in ein Dataset einlesen? Meine
Versuche ergeben Anzahl der Gesamtspalten in einer DataTable:
\\\
Dim ds As New DataSet
Dim cn As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=M:\Music\MusicDataBase.mdb")
cn.Open()
Dim da As New OleDb.OleDbDataAdapter("SELECT * FROM Category, Artists,
Albums, Titles", cn)
Dim dcb As New OleDb.OleDbCommandBuilder
dcb.DataAdapter = da
da.Fill(ds)
cn.Close()
For Each dt As DataTable In ds.Tables
Console.WriteLine(dt.Columns.Count)
Next
///
Ist irgendwie auch verstàndlich, wenn man sich den SelectCommand anschaut.
Ich möchte nur einfach alle 4 Tabellen auf einmal in das Dataset laden.



Hi Karsten,
der Provider muss MARS unterstützen. Die Jet kann das nicht. Der SQL Server
2005 kann das:

Dim ds As New DataSet ' untypisiertes DataSet
Using cn As New SQLConnection(MySettings.cn)
Dim sb as New StringBuilder
sb.Append("SELECT * FROM Category;")
sb.Append("SELECT * FROM Artists;")
sb.Append("SELECT * FROM Albums;")
sb.Append("SELECT * FROM Titles;")
Call (New SQLDataAdapter(sb.ToString, cn)).Fill(ds)
End Using

Danach gibt es: Table, Table1, Table2, Table3 im DataSet.

Viele Gruesse

Peter

Ähnliche fragen