ich habe mich mit der "direkten" Übernahme aus anderen Datenbanken beschäftigt,
die auch im Base-Handbuch beschrieben ist:
Kapitel 9 Makros Daten von einer Datenbank in eine andere kopieren http://robert.familiegrosskopf.de/lo_hb ... 1187769861
Die Beispieldatenbank findet man hier: http://robert.familiegrosskopf.de/index ... _beispiele als Datenkopie_Quelle_Ziel.zip
Im Unterschied zum Handbuch habe ich mit externen Sqlite3-Datenbanken gearbeitet (und die Kopierrichtung geändert, so daß das Makro aus der Zieldatenbank gesteuert wird). Zu meiner Verwunderung fand ich in der Zieldatei dann eine
statt der "Düne" in der Quelldatei.Düne
Das Beispiel im Handbuch arbeitet nur mit der internen HSQL-DB und hat diese Probleme nicht.
Quell- und Zieldatei sind als UTF-8 in den erweiterten Einstellungen angemeldet und eine "indirekte" manuelle Kopie via Calc transferiert auch die Umlaute ohne Fehler. Eine Anzeige der gelesenen Quelldaten per MsgBox zeigt die Umlaute korrekt an.
Kennt jemand das Problem schon und weiß, wo man entweder den Zeichensatz nochmal setzen kann, oder eine Konvertierung veranlasst?
Ich vermute, daß die Ursache im Lesen der Daten mit getString
Code: Alles auswählen
stName = oAbfrageergebnis.getString(2)
Code: Alles auswählen
stSqlZiel = "INSERT INTO ""Tabelle"" (""ID"",""Name"",""Ort"") VALUES ('"+inID+"','"+stName+"','"+stOrt+"')"
Taucht das Problem eventuell auch bei anderen Datenbanken auf oder nur bei SQLite3 ?
MFG, Jörn
PS: Getestet unter LO 6.0.4.2 (64Bit) unter Win10; geprüft unter LO 5.3.7.2 unter Win8.1;
SQlite3-ODBC-Treiber 0.9993 Ch.Werner