Fehlermeldung in Formular

Hallo, ich habe in eine MySQL Datenbank ( Vers. 5.7 Ubuntu 18.4) und habe diese mit dem MariaDB JDBC (Vers. 2.4.3) in LibreOffice Base eingebunden. (Der Oracle MySQL JDBC Treiber mag die Mitteleuropäische Zeit nicht.)

Bis Libreoffice 6.1 funktioniert das ganze konstrukt soweit zufrieden stellend. Ab Version 6.2.6 bekomme ich folgende Fehlermeldung wenn ich ein Formular mit Unterformularen öffne.

Could not set parameter at position 1 (values was 0)
Query - conn:1383(M)  - "SELECT * FROM `bsbd_BerlinDB`.`tblEingruppierung` WHERE ( `bsbd_BerlinDB`.`tblEingruppierung`.`id` = :link_from_id )"

Jemand eine Idee wo das Problem liegt und wie man es lösen kann?

Das wird an der Weitergabe der Parameter liegen.

Schau einmal, ob unter Bearbeiten > Datenbank > Erweiterte Einstellungen > “Benannte Parameter durch ? ersetzen” zur Verfügung steht. Das löst das Problem.

Steht es dort nicht, so musst Du die *.odb-Datei in einem Packprogramm öffnen. Du öffnest anschließend die content.xml. Der nicht funktionierende Code:

<db:driver-settings db:system-driver-settings="" db:base-dn=""
db:parameter-name-substitution="false"/>

Wird dieser Code geändert auf

<db:driver-settings db:system-driver-settings="" db:base-dn=""/>

so funktionieren die Unterformulare wieder mit der *.odb-Datei.

Auch mit dem JDBC-Treiber von MySQL geht übrigens der Kontakt. Bei neueren Treibern (ab Version 8.*) für MySQL ist die Verbindung wegen einer Zeitzoneneinstellung nur über die Angabe von Parametern möglich, wenn nicht Servereinstellungen beeinflusst werden können:

jdbc:mysql://localhost/«Datenbankname»?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC

Gruß

Robert

Danke für die Hilfe jetzt funktionierts wieder.
Danke auch für den Tip mit dem MySQL Treiber.

Gruß Markus