Seite 1 von 1
Verbindung mit MYSQL Datenbank / JDBC per makro
Verfasst: Di, 05.08.2008 15:40
von nusta88
Hallo,
ich versuche eine direkte Verbindung mit JDBC /MYSQL Datenbank aufzubauen, also ohne eine Base(odb)-Anwendung.
Ich hab zwei Varianten gefunden, aber weiß selbst nicth wie man es nutzen kann. Ich zeige euch die Beispiele. Danke für kommende Hilfen.
Code: Alles auswählen
Dim oParms() As New com.sun.star.beans.PropertyValue
sUser$ = "CARESQL"
sPass$ = "CARESQL"
sURL$ = "sdbc:mysql:jdbc:localhost:3306/stamps"
oManager = CreateUnoService("com.sun.star.sdbc.DriverManager")
AppendProperty(oParms(), "user", sUser)
AppendProperty(oParms(), "password", sPass)
AppendProperty(oParms(), "JavaDriverClass", "com.mysql.jdbc.Driver")
oCon = oManager.getConnectionWithInfo(sURL, oParms())
Code: Alles auswählen
dim mDBProperties(2) as New com.sun.star.beans.PropertyValue
mDBProperties(0).name = "user"
mDBProperties(0).value = "CARESQL"
mDBProperties(1).Name = "password"
mDBProperties(1).value = "CARESQL"
mDBProperties(2).Name = "JavaDriverClass"
mDBProperties(2).value = "org.gjt.mm.mysql.Driver"
oDriverManager = createUnoService("com.sun.star.sdbc.DriverManager")
oVerbindung = oDriverManager.getConnectionWithInfo("jdbc:*********", mDBProperties())
Re: Verbindung mit MYSQL Datenbank / JDBC per makro
Verfasst: Di, 05.08.2008 22:59
von komma4
nusta88 hat geschrieben:ich versuche eine direkte Verbindung mit JDBC /MYSQL Datenbank aufzubauen,
Hast Du mit dem Code schon etwas versucht?
nusta88 hat geschrieben:Ich hab zwei Varianten gefunden, aber weiß selbst nicth wie man es nutzen kann. [
Wo hast Du die Beispiele gefunden?
Was sagt Dir dabei nichts?
Und: was möchtest Du mit der Verbindung denn machen?
Deine Anfrage geht über das hinaus, was ein Standardnutzer so braucht - deshalb meine Fragen. Da solltest Du schon mehr mitbringen, als nur den Wunsch, so etwa umzusetzen.
Also:
Welchen Anwendungsfall, und warum ohne *.odb?
P.S.: so etwas funktioniert. Hatte ich noch nie versucht, aber mit der SDBC-URL kam ich in drei Minuten zum Ziel (habe erst noch DannyBs
AppendProperty auch der Platte gesucht).
Re: Verbindung mit MYSQL Datenbank / JDBC per makro
Verfasst: Mi, 06.08.2008 10:00
von sg1985
das würde mich auch interessieren, wie so etwas funktioniert - da ich meine Verbindung zur Datenbank momentan auch per .odb Datei aufbaue, es aber für mich sehr sinnvoll wäre, wenn ich keine .odb Datei mit mir "rumschleppen" müsste, sondern alles in dem Makro (das SELECT Anweisungen ausführt) erledigen könnte (da dieses Makro später anderen Leuten im Büro zur Verfügung stehen soll, und diese dann nur das Makro einbinden müssten)
Ich benutze den Treiber "org.postgresql.Driver" und habe beim Erstellen der .odb Datei "JDBC" als Datenbanktyp ausgewählt.
Re: Verbindung mit MYSQL Datenbank / JDBC per makro
Verfasst: Mi, 06.08.2008 10:14
von nusta88
da dieses Makro später anderen Leuten im Büro zur Verfügung stehen soll, und diese dann nur das Makro einbinden müssten
genau deswegen will ich das auch einsetzen. Weil so müsste ich 4 verschiedene Base-Dateien erstellen. Aber mit dem Makro würde ich dann nur eine Datei haben, wo ich alles erledigen kann.
Hast Du mit dem Code schon etwas versucht?
Ja ich hab mich mit dem 2. Makro beschäftigt, allerdings hab ich immer eine Fehlermeldung bekommen, dass
nicht stimmt oder sowas ähnliches. Ich glaube auch, dass das zweite Makro eher auch mit einer .odb Datei zu verbinden ist, aber bin mir da nicht sicher.
Wo hast Du die Beispiele gefunden?
Was sagt Dir dabei nichts?
Das ich halt immer eine Fehlermeldung bekomme, obwohl ich an den Codes keine Änderungen vorgenommen habe, die zu einer Fehlermeldung führen sollte.
Das erste Beispiel ist aus dem Dokument von Andrew und das zweite hab ich hier in der Forumssuche gefunden.
Und: was möchtest Du mit der Verbindung denn machen?
Ich möchte eine Abfrage durchführen.
Welchen Anwendungsfall, und warum ohne *.odb?
Wie gesagt, dass sollen die Kunden benutzen und da möchte ich nicht, dass die 4-5 Dateien wegen einer Anwendung auf der Festplatte gespeichert haben müssen. Ich möchte halt eine elegantere Lösung finden.
Re: Verbindung mit MYSQL Datenbank / JDBC per makro
Verfasst: Mi, 06.08.2008 10:51
von heinz_ketchup
Hi nusta88,
vielleicht hilft Dir das ja weiter:
http://extensions.services.openoffice.o ... ect/jaguar
Das ist eigentlich genau das Makro, dass Du suchst.
Schöne Grüße
Werner
Re: Verbindung mit MYSQL Datenbank / JDBC per makro
Verfasst: Mi, 06.08.2008 11:12
von sg1985
hi nusta88,
ich habs jetzt hinbekommen, mit deiner 2. Codevariante, die du im ersten Beitrag gepostet hast, funktioniert es ganz gut.
Du musst wirklich nur mehr Name, Passwort und Treiber umändern.
Re: Verbindung mit MYSQL Datenbank / JDBC per makro
Verfasst: Mi, 06.08.2008 11:14
von nusta88
Danke die Funktion sieht ganz gut aus.
Allerdings wird die Anwendung per Makro erstellt und ist in einem Formular zu finden. Die Kunden sollen die Felder mit den Suchwörtern wie Kundennummer o.ä. füllen. Dann soll ein Button getätigt werden und dann soll das Programm sich mit der Datenbank verbinden und die Abfrage durchführen. Ich weiß jetzt nicht, ob SQLREQUEST nur eine Funktion für Calc ist oder das auch als Makro in Base angewandt werden kann.
Re: Verbindung mit MYSQL Datenbank / JDBC per makro
Verfasst: Mi, 06.08.2008 11:17
von nusta88
ja danke sg1985
ich hatte einen Tippfehler deswegen hat das nicht funktioniert. Jetzt läuft alles bestens. Danke euch allen
Hab jetzt allerdings auch die Verbindung, glaub ich zumindest hergestellt und zwar mit dem Makro hier:
dim mDBProperties(2) as New com.sun.star.beans.PropertyValue
mDBProperties(0).name = "user"
mDBProperties(0).value = "CARESQL"
mDBProperties(1).Name = "password"
mDBProperties(1).value = "CARESQL"
mDBProperties(2).Name = "JavaDriverClass"
mDBProperties(2).value = "org.gjt.mm.mysql.Driver"
oDriverManager = createUnoService("com.sun.star.sdbc.DriverManager")
oVerbindung = oDriverManager.getConnectionWithInfo("jdbc:*********", mDBProperties())