Mehrere Tables abfragen

Maximus

Erfahrenes Mitglied
Hi,

ich habe eine Datenbank (Access) , in der mehrere vollkommen voneinander unabhängige Tables sind.
Wie kann man mittels C# die einzelnen Tables auslesen?
Ich möchte also am Ende eine Listbox haben, in der die Namen der einzelnen Tables aufgelistet werden.
Ist sowas per SQL-Command lösbar oder wie muß man dabei vorgehen?

Besten Dank für Eure Hilfe.

Gruß
Maximus.
 

mage

Erfahrenes Mitglied
Natürlich, geht es.
Du musst nur das OleDBProvider Model verwenden. Das ist von der Syntax geleich zum SQLProvider.
 

Maximus

Erfahrenes Mitglied
Ich benutze den OleDBProvider.
Leider weiß ich nicht, wie ich die einzelnen Tables einer Datenbank auslesen kann!
Hast Du einen Tip?

Gruß Maximus.
 

mage

Erfahrenes Mitglied
Zuerst brauchst du eine OleDbConnection.
Danach gibt es wie beim SQL Server auch zwei Möglichkeiten.
A) Über ein Command und einen DataReader die Tabelle auslesen
B) Über einen DataAdapter ein DataSet füllen.

Variante A ist schneller als B, B ist dafür mächtiger.

Die Namen der Objekte lautend OleDbCommand, OleDbDataReader und OleDbDataAdapter. Das DataSet ist eine Datenbank unabhängiges Objekt.
Wenn du Datenbindung verwenden willst, solltest Du Variante B verwenden, da dazu ein DataSet verwendet wird. Suche einfach mal in der MSDN Dokumentation nach den Begriffen, dort sind in der Regel brauchbare Beispiel in den verschiedenen Programmiersprachen VB.Net, C# und C++.
 

Maximus

Erfahrenes Mitglied
Ich glaube Du hast mich nicht verstanden.
Das Problem liegt nicht darin, einen Table auszulesen. Vielmehr ist das Problem zu ermitteln, wieviele Tables es in einer Datenbank gibt und wie diese heißen.
Per Command oder DataReader erfodert ja jeweils eine Tabelle zum auslesen. Diese soll allerdings im Programm erst mal per ListBox ausgewählt werden.

Gruss Maximus!