Hallo Miteinander,
ich hab mir eine Datenbank gebaut, in der ich mit einem Makro zusätzliche Daten (Datum, Uhrzeit) auf Knopfdruck in eine zweite Tabelle eintragen lasse. Das gute Stück hat auch wunderbar funktioniert, solange ich die OOo-HSQL-Datenbank verwendete.
Seit ich aber das Makro auch noch für eine MySQL-Datenbank, die auf einem unserer Firmenserver liegt, verwenden will, mag es mich leider nicht mehr. Es bricht immer an der gleichen Stelle ab, nämlich bei
If not oDatenquelle.IsPasswordRequired Then oDatVerb = oDatenquelle.getConnection("","")
else
oHandler = oDatenquelle.createUnoService("com.sun.star.sdb.InteractionHandler")
oDatVerb = oDatenquelle.ConnectWithCompletion(oHandler)
Sobald es zum InteractionHandler kommt, verweigert es seinen Dienst. Kann mir jemand sagen, warum? Muß ich, nur weil ich eine MySQL-Datenbank jetzt verwende, die Zeile anders schreiben? Und wenn ja, wie?
Danke schon mal im Vorraus.
AhQ
Makro geht nicht mehr mit MySQL
Moderator: Moderatoren
Re: Makro geht nicht mehr mit MySQL
Hey AhQ,
an welcher Zeile genau steigt dein Makro aus? Es kann nur eine geben - und die ist markiert?
Aber unahbhängig davon: Die Verbindungen zwischen MySQL und HSQLDB sind schon grundverschieden - ich fürchte, der Fehler liegt eher dort begründet.
Um eine MySQL Verbindung zu erhalten, brauchst du so etwas:
IP Adresse, Benutzername, Passwort und Datenbanknamen musst du natürlich entsprechend anpassen. Diese Verbindung nutzt den JDBC Treiber, der natürlich ebenfalls installiert und registriert sein muss!
Funktioniert deine Verbindung ansonsten?
Viele Grüße
Thomas
an welcher Zeile genau steigt dein Makro aus? Es kann nur eine geben - und die ist markiert?
Aber unahbhängig davon: Die Verbindungen zwischen MySQL und HSQLDB sind schon grundverschieden - ich fürchte, der Fehler liegt eher dort begründet.
Um eine MySQL Verbindung zu erhalten, brauchst du so etwas:
Code: Alles auswählen
function getConnection
dim mDBProperties(2) as New com.sun.star.beans.PropertyValue
mDBProperties(0).name = "user"
mDBProperties(0).value = "<Benutzername>"
mDBProperties(1).Name = "password"
mDBProperties(1).value = "<PasswortDesBenutzers>"
mDBProperties(2).Name = "JavaDriverClass"
mDBProperties(2).value = "org.gjt.mm.mysql.Driver"
oDriverManager = createUnoService("com.sun.star.sdbc.DriverManager")
oConnection = oDriverManager.getConnectionWithInfo( _
"jdbc:mysql://123.456.789.852:3306/MeineDatenbank", mDBProperties())
getConnection = oConnection
End function
Funktioniert deine Verbindung ansonsten?
Viele Grüße
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Re: Makro geht nicht mehr mit MySQL
Hallo Toxitom,
super, das wars.
Jetzt hängt sich das Makro nur noch beim Ausführen des Insert-Befehls auf ("You have an error in your sql-syntax"...) Ich denk, daß ich (noch) den Datumswert falsch übergebe, aber das werd ich auch noch hinbekommen. Wär ja gelacht!
Im Notfall schrei ich ganz laut.
Vielen Dank
AhQ
super, das wars.
Jetzt hängt sich das Makro nur noch beim Ausführen des Insert-Befehls auf ("You have an error in your sql-syntax"...) Ich denk, daß ich (noch) den Datumswert falsch übergebe, aber das werd ich auch noch hinbekommen. Wär ja gelacht!

Im Notfall schrei ich ganz laut.
Vielen Dank
AhQ