Ok, ich versuche es auch noch einmal.
Schaue Dir die Befehle, die Du im oben angegebenen Link findest mal genau an.
Da steht alles drin, was Du brauchst.
1.) Verbindung zur Datenbank herstellen
2.) Abfrage durchführen--> Die Daten werden hier bereits in die Variable "Sql_Abfrage" eingelesen
3.) Die Variable "Sql_Abfrage" auslesen, den sie ist eine "Variant"-Variable, sprich mal Zahl, mal String usw. und muß deshalb entsprechend ausgelesen werden.
Zur Erklärung:
Wenn Du z.B. die Spalten "Name", "Nachname", mit dem Format "Varchar" und die "Hausnummer" mit dem Format "Integer" aus einer Tabelle "Adressen" auslesen willst, geht das z.B. so:
Code: Alles auswählen
Sub Tabelle_Auslesen
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
Datenquelle = DatabaseContext.getByName(ThisDatabaseDocument.getLocation())'Hier wird der aktuelle Datenbankname ermittelt.
Verbindung = Datenquelle.GetConnection("","")' ("Benutzername","Passwort")
SQL_Anweisung = Verbindung.createStatement()
sql="select ""Name"", ""Nachname"", ""Hausnummer"" from ""Adressen"""
Sql_Abfrage=SQL_Anweisung.executeQuery(Sql)
While Sql_Abfrage.next
oName=Sql_Abfrage.getString(1)' hier steht getString(1), weil es sich um die erste Spalte , Format "Varchar" im Abfragebefehl "sql" handelt.
oNachname=Sql_Abfrage.getString(2)' hier steht getString(2), weil es sich um die zweite Spalte , Format "Varchar" im Abfragebefehl "sql" handelt.
oHausnummer=Sql_Abfrage.getInt(3)' hier steht getInt(3), weil es sich um die dritte Spalte , Format "Integer" im Abfragebefehl "sql" handelt.
msgbox "Name: "+oName&" "+oNachname+" Hausnummer: "+oHausnummer
Wend
end Sub
Mit den Variablen oName, oNachname und oHausnummer kannst Du jetzt weiterarbeiten, oder du liest die Abfrage in ein Array ein.
Code: Alles auswählen
i=0
While Sql_Abfrage.next
i=i+1
oName(i)=Sql_Abfrage.getString(1)' hier steht getString(1), weil es sich um die erste Spalte , Format "Varchar" im Abfragebefehl "sql" handelt.
oNachname(i)=Sql_Abfrage.getString(2)' hier steht getString(2), weil es sich um die zweite Spalte , Format "Varchar" im Abfragebefehl "sql" handelt.
oHausnummer(i)=Sql_Abfrage.getInt(3)' hier steht getInt(3), weil es sich um die dritte Spalte , Format "Integer" im Abfragebefehl "sql" handelt.
msgbox "Name: "+oName(i)&" "+oNachname(i)+" Hausnummer: "+oHausnummer(i)
Wend
Dann hast Du die ganze Tabelle in einem Stück.
Gruß R