🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Makro mit Insert to funkioniert nicht mehr

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
Reino 22
Beiträge: 4
Registriert: Do 22. Nov 2012, 15:11

Makro mit Insert to funkioniert nicht mehr

Beitrag von Reino 22 » Do 22. Nov 2012, 18:54

Hallo Forum,
nach Umstieg auf Win 7 64 bit und Update von LibreOffice auf 6.4 bekomme ich Probleme mit einem Makro.
Die Datenbank ist Mysql (xampp 1.7.4).
Die Verbindung geht über den JDBC Treiber.
JRE 1.6 und 1.7 ist installiert (32 bit).

Problem:
Aus einem Formular wird ein anderes Formular geöffnet und Daten eingetragen.
Unter Xp lief dieses Makro mehrere Jahre problemlos.
Jetzt bekomme ich folgende Fehlermeldung:

„Basic- laufzeitfehler.
Es ist eine Ausnahme aufgetreten
Type: com.sun.star.sdbc.sqlExeption
Message:
“Erfahrungen_Unterricht”(“Erfahrungen”,”VerKN_Id”)Values(“Hallo”,’4’) at line 1“

Dieser Fehlermeldung bezieht sich auf folgende Zeile:
SQL_1 = "Insert Into ""Erfahrungen_Unterricht"" (""Erfahrungen"",""VerKN_Id"")Values(""Hallo"",'" & varC & "')"
varC ist eine Variable, die einen Feldwert beinhaltet.

Für Hilfe, wäre ich sehr dankbar und schon mal viel Dank im Voraus.

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Makro mit Insert to funkioniert nicht mehr

Beitrag von RobertG » Do 22. Nov 2012, 21:00

Hallo Reino 22,

ohne Datenbank selbst wird das wohl schwerlich zu erklären sein. Die Aussage "sqlExeption" ist ja nicht gerade hilfreich. Hast Du das mit beiden verschiedenen Java-Versionen probiert? An dem Basic-Code wirst Du ja nichts geändert haben - auch nicht an irgendwelchen doppelten Anführungsstrichen usw. ...

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: Makro mit Insert to funkioniert nicht mehr

Beitrag von gogo » Do 22. Nov 2012, 23:11

Reino 22 hat geschrieben: SQL_1 = "Insert Into ""Erfahrungen_Unterricht"" (""Erfahrungen"",""VerKN_Id"")Values(""Hallo"",'" & varC & "')"
Hi Reino,
Versuch's mal mit Backticks bei den Feld- und Tabellennamen.
Und: So wie Du das hier gepostet hast ist die Verkn_Id ein String - wird wohl stimmen wenn's vorher funktioniert hat - wenn's kein String ist, dann die Hochkommas weglassen.

Code: Alles auswählen

SQL_1 = "Insert Into `Erfahrungen_Unterricht` (`Erfahrungen`, `VerKN_Id`) Values('Hallo','" & varC & "')"
Ausserdem würde ich Dir zum Debuggen folgende Zeile unter "SQL_1 = ..." empfehlen:

Code: Alles auswählen

SQL_1 = inputbox(,,SQL_1)
Dann bekommst Du nämlich das umgewandelte Statement in der Input-Box und kannst es da rauskopieren und in einem anderen Datenbankbrowser verwenden - ausserdem könnte es sein, dass die SQL-Excepiton mit dem Inhalt von varC nix anfangen kann - aber das kann ich mir fast nicht vorstellen - ausser es ist ein leerer String (weil varC leer ist) und das Feld verträgt keine leeren Strings.
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu

Reino 22
Beiträge: 4
Registriert: Do 22. Nov 2012, 15:11

Re: Makro mit Insert to funkioniert nicht mehr

Beitrag von Reino 22 » Fr 23. Nov 2012, 15:04

Hallo Robert, Hallo Gogo,
vielen Dank für die schnellen Antworten. Leider stehe ich immer noch auf dem Schlauch. Da ich hier Laie bin probiere ich, halbwegs systematsch Alternativern durch.
Im Basic_Code habe ich nicht verändert.
Zur Sicherheit habe ich auf dem alten Rechner (XP) nochmal nachgeschaut. Es läuft alles wie geschmiert. Dort läuft Jre 1.6.0_33. (habe ich leider nicht mehr im Netz gefunden.)
Java 1.6, 1.7. beide ausprobiert und mit Libreversionen von 3.4 bis 3.6 getestet.
Folgendes kommt mir spanisch vor. Wenn ich die Verbindung mit dem Treiber MYSQL (Native) mache, bekomme ich eine Fehlermeldung sinngemäß, dass kein entsprechender SDBC Treiber gefunden wurde. Installiert habe ich "mysql-connector-java-5.1.22-bin.jar. Beim alten Rechner funktionieren beide Wege.
Ich weiß im Moment nicht wie ich weiter kommen kann.
Grüße
Reino 22

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Makro mit Insert to funkioniert nicht mehr

Beitrag von RobertG » Fr 23. Nov 2012, 16:21

Hallo Reino 22,
Reino 22 hat geschrieben: Zur Sicherheit habe ich auf dem alten Rechner (XP) nochmal nachgeschaut. Es läuft alles wie geschmiert. Dort läuft Jre 1.6.0_33. (habe ich leider nicht mehr im Netz gefunden.)
Java 1.6, 1.7. beide ausprobiert und mit Libreversionen von 3.4 bis 3.6 getestet.
Alle älteren Versionen von Java gibt es auch im Netz. Etwas versteckt, aber die Suchmaschine schmeißt mir folgendes bei "jre alte versionen" aus:
http://www.oracle.com/technetwork/java/ ... 39210.html
Wenn Du aber den Kontakt mit beiden neueren Versionen erstellen kannst und auch alles zufriedenstellend läuft, dann wird die ältere Version auf dem neuen Rechner wohl nicht den erhofften Gewinn bringen.
Reino 22 hat geschrieben: Folgendes kommt mir spanisch vor. Wenn ich die Verbindung mit dem Treiber MYSQL (Native) mache, bekomme ich eine Fehlermeldung sinngemäß, dass kein entsprechender SDBC Treiber gefunden wurde. Installiert habe ich "mysql-connector-java-5.1.22-bin.jar. Beim alten Rechner funktionieren beide Wege.
Du hast auf ein 64-bit-System gewechselt. Irgendwie scheint der Kontakt ja nicht komplett zu klappen. Zugriff hast Du nicht mehr über die direkte Verbindung. Ich würde konsequent erst einmal die Java-Versionen untersuchen: Wie weit funktionieren JRE-Versionen in der 32-bit-Fassung im 64-bit Windows? Dann würde ich zum einen die aktuellste LO-Version (3.6.3) nehmen und gleichzeitig die stabilste für Base installieren (LO 3.3.4) - zumindest unter Linux ist so etwas problemlos möglich.

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten