Per Makro auf vorhandene Abfrage zugreifen

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

nusta88
***
Beiträge: 78
Registriert: Di, 26.06.2007 13:30

Per Makro auf vorhandene Abfrage zugreifen

Beitrag von nusta88 »

hallo,

ich würd gern wissen, mit welchem code man auf eine vorhandene Abfrage zugreifen kann und diese ändern kann.
Auf eure Hilfen danke ich jetzt schon.

cus
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Per Makro auf vorhandene Abfrage zugreifen

Beitrag von komma4 »

Zugreifen? Ausführen!

Code: Alles auswählen

' 2008-01-31
' Modul: o_ExecuteQuery
Sub x_execParameterAbfrage
' Kontext holen
oDatenbankKontext = CreateUnoService ( "com.sun.star.sdb.DatabaseContext" )

' Datenquelle auswählen
oDatenquelle = oDatenbankKontext.getByName( "NameDerDatenquelle" )

sQuery = "qry_NameDerAbfrage"

' Abfragen
oAbfragen = oDatenquelle.QueryDefinitions 
' gewünschte Abfrage vorhanden?
if ( oAbfragen.hasByName( sQuery) ) Then
' Abfrage holen
oAbfrage = oAbfragen.getByName( sQuery )

' SQL-Ausdruck von Abfrage entnehmen
 sQuery = oAbfrage.Command
 ' Verbindung zur DB herstellen
 oVerbindung = oDatenquelle.getConnection( ,)
 ' Statement erzeugen
 oStatement = oVerbindung.createStatement
 ' Abfrage absetzen
 oResultSet = oStatement.executeQuery( oAbfrage.Command )
 
 ' durch alle Resultate iterieren
 while oResultSet.next()
[...]
Ändern? Weiss ich nicht.



Hilft das weiter?
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
nusta88
***
Beiträge: 78
Registriert: Di, 26.06.2007 13:30

Re: Per Makro auf vorhandene Abfrage zugreifen

Beitrag von nusta88 »

Erst einmal dankeschön für deine schnelle Antwort

Also aufjedenfall kann ich zwar damit auf die Abfrage zugreifen und den SQL-Ausdruck, aber weiter komme ich damit nicht.

Aber mir ist so ne andere Methode eingefallen durch dein Makro. Kann man denn z.B. eine Abfrage per Makro in der Datenbank erzeugen?
Also z.b. wir können ja so weit ich weiß extern halt Abfragen erzeugen und diese dann auslesen.
Ich würd es dann so wollen, dass eine Abfrage erstellt wird. und dann halt in der Datenbank zu sehen ist :?
Meinst du das funktioniert??

Edit:
Ich kann ja auch Tabellen per Makro erstellen

Code: Alles auswählen

  sSql = "CREATE TABLE " & DTABez & " (" & sTBez & ")"
  oStmt.executeQuery(sSql)
Gibt es sowas ähnliches auch für Abfragen.

was erreicht man mit executeupdate?? würde das nicht helfen
Antworten