Seite 1 von 1

Tabellenname herausfinden

Verfasst: Di, 13.10.2009 20:51
von keksi1970
Hi,

ich möchte gerne in meinem Makro mit zugriff auf die DB herausfinden, ob eine bestimmte Tabelle existiert, falls nicht, will ich sie anlegen.

ich habe zwar hier gesucht, aber dieses thema nicht gefunden.

wie wäre es mit nem tipp ? :)

LG
Andreas

Re: Tabellenname herausfinden

Verfasst: Di, 13.10.2009 23:22
von komma4
Du bist im falschen Unterforum.


Und Du kennst Xray, empfiehlst es sogar, ... und dann suchst Du hier im Forum?

Und Du solltest inzwischen auch Andrews BASE-Dokument kennen.
Dort steht es in Kapitel
2.2.5. Creating and deleting tables using SQL

Viel Erfolg!

Re: Tabellenname herausfinden

Verfasst: Mi, 14.10.2009 21:24
von keksi1970
ich sag mal so :

xray kennt viele antworten, wenn man die frage richtig stellt.
nur kenne ich hierbei die frage nicht nach der evtl existierenden tabelle.

Tabellen erstellen oder löschen ist nicht das Problem.
Nur Wie frage ich nach dem Namen einer Tabelle ?
oder besser :
welches Objekt frage ich, ob der Inhalt ein anderes bestimmtes Objekt enthält ?

LG
Andreas

Re: Tabellenname herausfinden

Verfasst: Mi, 14.10.2009 22:14
von komma4
Na, ... wie gehe ich in dem Fall vor?


Alles läuft über die ODB, also erst mal eine Verbindung zur (registrierten!) Datenbank, dieses Objekt untersuchen, dann siehste schon...

Code: Alles auswählen

oDBKontext = CreateUnoService ( "com.sun.star.sdb.DatabaseContext" )
oDatenquelle = oDBKontext.getByName( "base_HSQLDB_test" )
' Verbindung zur DB herstellen
If Not oDatenquelle.IsPasswordRequired Then
   oVerbindung = oDatenquelle.getConnection("" , "" )
Else
   oInteractionHandler = createUnoService( "com.sun.star.sdb.InteractionHandler" )
   oVerbindung = oDatenquelle.connectWithCompletion( oInteractionHandler )
End If

xray oVerbindung

Print oVerbindung.Tables.hasByName( "tabAndreas" )