Seite 1 von 1
SOLVED // MySQL-Base Formularproblem
Verfasst: Mo, 05.05.2008 17:19
von Rumata
Ein weiteres Problem mit der Kombination MySQL-Base:
Kennt irgendjemand das Phänomen, dass ein Formular mit Subformular, das an eine MySQL Datenbank gebunden ist, bisweilen die Zuordnung der Felder ändert. Das äussert sich z.B. darin dass ein String-Feld "remarks" manchmal einwandfrei funktioniert, manchmal jedoch wie die vorhergehenden Variablen als Tinyint behandelt wird und dementsprechen fuer das Feld remarks im Formular "0" eingetragen ist. Wenn man jedoch mit MySQL Admin in der Tabelle nachsieht, steht dort immer noch der richtige Wert fuer remarks, z.B. "none" o.ä. Diese Unzuverlässigkeit (manchmal klappt es, manchmal nicht), macht mich bald wahnsinnig.
Weiss jemand, wie man ein abgespeichertes Formular im Quellcode editiert, vielleicht finde ich ja dort irgendwo den Fehler...soll ja angeblich alles XML-Format sein.
Danke!
Re: MySQL-Base Formularproblem
Verfasst: Di, 06.05.2008 13:10
von AhQ
Hallo Rumata,
ich arbeite ausschließlich mit MySQL und Base (XP und OOo 2.4), meine Formulare haben auch sämtliche irgendwelche Subformulare, aber das von Dir beschriebene Verhalten hab ich noch nicht beobachtet. Ich bin mir außerdem sicher, daß es mir irgendwann aufgefallen wäre.
Ich kann nur vermuten, daß der Haken irgendwo in Deiner Datenbank ist (hast Du es nur bei einer beobachtet oder schon bei unterschiedlichen?), aber was da schief läuft, kann ich nicht beurteilen.
Viele Grüße
AhQ
Re: MySQL-Base Formularproblem
Verfasst: Di, 06.05.2008 13:57
von Rumata
Ich verstehe es auch nicht, der Fehler kommt häufig, aber nicht immer. Es könnte sein, dass es mit Änderungen in der MySQL Datenstruktur zusammenhängt, z.B. wenn ich eine Variable verändere oder hinzufuege. Diese Änderungen sollten jedoch keine Auswirkungen auf die im Formular verwendeten Felder haben, da diese eben nicht verändert werden. Ich bin alle Eigenschaften in den Kontrollfeldern und im Formular-Navigator durchgegangen. Sie stimmen und sind korrekt gespeichert. Beim Öffnen des Formulars werden jedoch die Felder dann falsch zugewiesen. Ein Feld "remarks" wird einer tinyint-variablen zugewiesen und umgekehrt.
Ich bin nach wie vor dankbar fuer Tips, wo ich nachschauen könnte....
Re: MySQL-Base Formularproblem
Verfasst: Di, 06.05.2008 15:27
von Rumata
Habe inzwischen auch die Datenbankdatei in zip umgewandelt und mir die xml-Dateien der Formulare etc angesehen. Ich kann keinen offensichtlichen Fehler entdecken, aber der Fehler tritt weiterhin auf, jedoch völlig unsystematisch und unberechenbar. Welche Datenbankengine verwendest du, AhQ? MyISAM oder InnoDB?
Re: MySQL-Base Formularproblem
Verfasst: Di, 06.05.2008 15:44
von Rumata
Ok, ich bins nochmal. Das Problem liegt vermutlich gar nicht an den Formularen, sondern prinzipiell an der Verbindung zu MySQL. Während die Tabellen unter MySQLAdmin korrekt angezeigt werden, werden die Spalten beim Öffnen in OO falsch zugeordnet. Also enthält eine String-Spalte z.B. den korrekten Text in MySQL, bei Öffnen unter OO/Tabellen wird jedoch der Zahlenwert einer anderen Spalte angezeigt. Und wie gesagt, dieses Problem tritt häufig auf, aber nicht immer. Ich habe bereits die Verbindung JDBC, MySQL(JDBC) sowie den neuen native MySQL Treiber verwendet. Letzterer funktioniert gar nicht, bei den beiden anderen tritt der Fehler auf.
Bitte, wer weiss Rat?
Re: MySQL-Base Formularproblem
Verfasst: Di, 06.05.2008 15:56
von AhQ
Hallo Rumata,
ich weiß keinen Rat, aber vielleicht hilft Dir ja
das weiter? Für das beschriebene Problem dort wird zwar scheinbar letztlich keine echte Lösung gefunden, aber vielleicht hilft ja die Geschichte mit dem anderen Treiber irgendwie weiter?
Viel Glück
AhQ
SOLVED Re: MySQL-Base Formularproblem
Verfasst: Di, 13.05.2008 23:35
von Rumata
Hallo nochmal,
to whom it may concern:
Nach vielen Stunden fruchtlosen Herumprobierens habe ich inzwischen herausgefunden, dass sich JRE 1.6.0.5 in Kombination mit dem aktuellen JDBC Treiber nicht vertragen. Bei Downgrade auf JRE 1.6.0.3 und JDBC 5.08 habe ich jetzt keine Schwierigkeiten mehr. Auch Abfragen via Base mit Mysql syntax funktionieren besser, da vorher Base die "AS" Alias-Anweisung teilweise ignoriert hat.
Ich hoffe, es hilft noch jemandem