Hallo Simson,
ich habe jetzt noch etwas probiert und eine, wenn auch recht eigenwillige, Variante gefunden, um die Zeilenumbrüche von Calc in eine Base-Tabelle der internen Datenbank zu überführen.
1. Schritt: Exportiere von Calc die Daten in eine *.csv-Datei.
2. Schritt: Erstelle in Deiner *.odb-Datei, die auf einer internen HSQLDB beruht, eine Textdatei mit genau den Feldern, die die *.csv-Datei enthält.
3. Schritt: Kopiere anschließend diese Textdatei wieder und füge sie als normale Tabelle der HSQLDB-Datenbank ein.
Der 2. Schritt hier im Detail:
Du musst Dir klar sein, welche Eigenschaften die Felder Deiner exportierten *.csv-Datei haben. Dann wird über
Extras > SQL eine Texttabelle für diese *.csv-Datei erstellt. Hier ein Beispielcode für so etwas:
Code: Alles auswählen
CREATE TEXT TABLE "csv" ("ID" INT PRIMARY KEY, "TextMitUmbruch" LONGVARCHAR, "TextOhneUmbruch" VARCHAR(100), "Datum" DATE);
Für die entsprechenden Datentypen schau einfach im Handbuch nach. Vermutlich wirst Du noch verschiedene Zahlentypen brauchen. Achte darauf, dass Datumswerte im für Datenbanken üblichen Format Jahr-Monat-Tag abgelegt sind. Der Dezimaltrenner für Dezimalzahlen muss ein Punkt sein.
Jetzt musst Du von der *.csv-Datei die erste Zeile entfernen, da die vermutlich die Spaltenbeschriftungen enthält. Steht da z.B. ID für das erste Feld, so ist das natürlich keine Integer-Zahl. Deswegen also die Spaltenbeschriftungen raus nehmen.
Code: Alles auswählen
SET TABLE "csv" SOURCE "Calctable.csv;encoding=UTF-8";
Mit diesem Befehl wird der Tabelle mit dem Namen "csv" die aus Calc exportierte "Calctable.csv" zugewiesen.
Jetzt musst Du über
Ansicht > Tabellen aktualisieren die Tabelle sichtbar machen. Die ist für die GUI noch nicht zu sehen, da Du direkt über SQL mit der Datenbank kommuniziert hast. Wenn Du auf die Tabelle klickst, dann wirst Du Zeilenumbrüche in der LONGVARCHAR-Spalte "TextMitUmbruch" sehen.
Damit ist der 2. Schritt beendet. Jetzt nur noch die Tabelle kopieren (rechte Maustaste > kopieren) und unter neuem Namen wieder einfügen. Damit bekommst Du eine Tabelle, die in der HSQLDB mit Zeilenumbrüchen den ursprünglichen Inhalt Deiner Calc-Tabelle zeigt.
Theoretisch könntest Du auch die *.csv-Datei nutzen. Nur ist das von der Sicherheit der Daten nicht empfehlenswert. Die *.csv-Datei liegt ja weiterhin, für andere Programme offen zugänglich, dort, wo Du sie abgespeichert hast. Eine falsche Bearbeitung und die Daten sind futsch.
Gruß
Robert