PB 4.2, Tabellen auslesen aus MS Access

Anfängerfragen zum Programmieren mit PureBasic.
manibaerchen
Beiträge: 32
Registriert: 27.11.2005 12:32
Wohnort: Bad Endorf
Kontaktdaten:

PB 4.2, Tabellen auslesen aus MS Access

Beitrag von manibaerchen »

Hallo Zusammen,

wahrscheinlich habe ich eine ziemlich d.... frage, ich möchte für
einen Querymanager der unter anderen Oracle, Postgre, Mysql kann auch
die "Datenbank" Access bewerkstelligen.

Mein Problem ist, wie kann ich über ODBC (ohne ADO/ DAO)
auslesen welche Tabellen und Tabellenstrukur in der Access DB
enthalten ist ? Wie z.b. mit Mysql "show tables) ?

Danke für jede Info

Mani
Geht nicht, Gibts nicht
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

ExDataBase sollte helfen, in PBOSL enthalten, siehe meine Signatur

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
manibaerchen
Beiträge: 32
Registriert: 27.11.2005 12:32
Wohnort: Bad Endorf
Kontaktdaten:

Beitrag von manibaerchen »

Hallo,

danke für den Tipp, aber leider ist das nur die halbe Geschichte.
Gibt es neben den Befehl in PBOSL "ExamineTables" auch
die Möglichkeit die Spalte und Typen einer Tabelle auszulesen
Wie in Mysql z.b. "desc xxx"

Vielen Dank

Mani
Geht nicht, Gibts nicht
Benutzeravatar
mk-soft
Beiträge: 3845
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

Nachdem die Datenbank geöffnet wurde und ein "Select * from ..." ausgeführt wurde kann man mit "DatabaseColumnName()" die Namen auslesen.

Siehe mal nach Database in der Hilfe von PB nach.

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
manibaerchen
Beiträge: 32
Registriert: 27.11.2005 12:32
Wohnort: Bad Endorf
Kontaktdaten:

Beitrag von manibaerchen »

Vielen Dank für den Tipp.

Nur bei einer DB mit mehreren zehntausenden Datensätzen dauert es ziemlich lange alle Tabelle mit select * from xxx abzufragen, um nur
die Struktur auslesen zu können.

Vielleicht gibt es noch einen anderen Trick ?

Vielen Dank
Mani
Geht nicht, Gibts nicht
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Beitrag von marco2007 »

manibaerchen hat geschrieben:zehntausenden Datensätzen

Meinst Du Reihen oder Spalten? Spalten kann man (glaube ich) nur 256 pro Tabelle anlegen -> und das Auslesen geht dann eh schnell.
Windows 11 - PB 6.03 x64
_________________________________
manibaerchen
Beiträge: 32
Registriert: 27.11.2005 12:32
Wohnort: Bad Endorf
Kontaktdaten:

Beitrag von manibaerchen »

Hallo,

sorry !
vermutlich habe ich mich nicht korrekt ausgedrückt.
Ich möchte aus einer "Access DB" allen Tabellen und deren Spalten
mit typen (z.B: varchar, int, etc) auslesen.

Die Tabellen bekomme ich mit dem ExDatabase in PBOSL. Aber
die einzelenen Spalten nicht. Aber jede Tabelle mit einem
select * from xxx abzufragen um die Spalten zu bekommen erscheint mir
nicht performant, vorallen wenn es großen Tabellen sind !

Vielen Dank
Mani
Geht nicht, Gibts nicht
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Beitrag von marco2007 »

Es reicht doch eine Reihe zu durchlaufen.
Zuletzt geändert von marco2007 am 20.07.2008 15:07, insgesamt 1-mal geändert.
Windows 11 - PB 6.03 x64
_________________________________
- chris -
Beiträge: 195
Registriert: 24.08.2005 19:52
Wohnort: Stadtallendorf

Beitrag von - chris - »

z.B:

SELECT TOP 1 * FROM xxx

Dann mit:

DatabaseColumnName

DatabaseColumnType

auf die Informationen zugreifen.
Antworten