Seite 1 von 1

Makro geht nicht mehr mit MySQL

Verfasst: Do, 02.08.2007 18:09
von AhQ
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

Re: Makro geht nicht mehr mit MySQL

Verfasst: Fr, 03.08.2007 09:56
von Toxitom
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:

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

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

Re: Makro geht nicht mehr mit MySQL

Verfasst: Fr, 03.08.2007 11:54
von AhQ
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! :D

Im Notfall schrei ich ganz laut.

Vielen Dank

AhQ