🙏 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. 🤗

[GELÖST] DB Migration MySQL nach LibreOffice

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
wartburgritter
Beiträge: 101
Registriert: Di 13. Nov 2012, 18:28

[GELÖST] DB Migration MySQL nach LibreOffice

Beitrag von wartburgritter » Sa 26. Okt 2013, 23:03

Guten Tag zusammen,

ich habe eine kleine Datenbank von MySQL nach LibreOffice migriert. Die Datenbank wurde zu einer Zeit erstellt, als es für Linux noch gar kein OpenOffice gab, daher in MySQL. Die Migration war gar nicht so schwierig, da ich ein sqlexport hatte. Ich habe ein anderes Probelem. Aus der MySQL Datenbanke habe ich früher mit folgendem Befehl csv-dateien erstellt.

Code: Alles auswählen

SELECT *
    INTO OUTFILE 'outdatei.csv'
    FIELDS
            TERMINATED BY ','
            OPTIONALLY ENCLOSED BY ''
    FROM `Tabellenname`
    ORDER BY `ID` ASC;
Obiges funktioniert unter LibreOffice nicht.

Unter LibreOffice konnte ich csv-dateien mit folgendem befehl exportieren

Code: Alles auswählen

SELECT *
    INTO TEXT "outdatei"
    FROM "Tabellenname"
    ORDER BY "ID" ASC;
Allerdings haben diese zwei Probleme.
- Alle deutschen Sonderzeichen sind Fragezeichen oder ähnliches.
- Bei neuen Tabellen werden leere Felder leer exportiert und aus der Importierten Tabelle werden leere Felder mit Anführungszeichen exportiert
Obwohl beide Tabellen meines Erachtens gleich sind (sind sie wohl aber nicht). Ich bin unter debian stable mit lo 3.5.4.2 unterwegs. Ich habe noch eine Beispieldatenbank angehängt.

gruss bernd
Dateianhänge
umlaut_csv_export.sql.zip
(15.18 KiB) 203-mal heruntergeladen
Zuletzt geändert von wartburgritter am So 27. Okt 2013, 23:48, insgesamt 1-mal geändert.

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: DB Migration MySQL nach LibreOffice

Beitrag von F3K Total » So 27. Okt 2013, 01:45

Hi,
versuch mal dieses:

Code: Alles auswählen

CREATE TEXT TABLE EXPORT1("ID" INTEGER NOT NULL PRIMARY KEY,"nachname" VARCHAR(100),"vorname" VARCHAR(100),"antwort1" VARCHAR(100),"antwort2" VARCHAR(100));
SET TABLE EXPORT1 SOURCE "\EXPORT1.CSV;fs=\semi;ignore_first=false;encoding=UTF-8";
INSERT INTO EXPORT1 SELECT * FROM "Tabelle1";

CREATE TEXT TABLE EXPORT2("ID" INTEGER NOT NULL PRIMARY KEY,"nachname" VARCHAR(100),"vorname" VARCHAR(100),"antwort1" VARCHAR(100),"antwort2" VARCHAR(100));
SET TABLE EXPORT2 SOURCE "\EXPORT2.CSV;fs=\semi;ignore_first=false;encoding=UTF-8";
INSERT INTO EXPORT2 SELECT * FROM "Tabelle1";
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

wartburgritter
Beiträge: 101
Registriert: Di 13. Nov 2012, 18:28

Re: DB Migration MySQL nach LibreOffice

Beitrag von wartburgritter » So 27. Okt 2013, 20:47

Besten Dank für den sql-Befehl. Damit funktioniert es für mich auch für die kleine Testdatenbank, aber nicht für die eigentliche Tabelle mit 15 Spalten. Es werden immer noch Anführungszeichen exportiert. Hier ist mein Code. Ich hab Datenbank, Code und Ergebnis angehängt. Mittlerweile hab ich per backports libreoffice 4.1.0.4 auf mein debian wheezy installiert. Bin also ziemlich up to date. Beste Grüsse Bernd

Code: Alles auswählen

CREATE TEXT TABLE MATRIKEL95(
"ID" INTEGER NOT NULL PRIMARY KEY,
"Vorname" VARCHAR(100),
"Nachname" VARCHAR(100),
"matrikel95-email" VARCHAR(100),
"weiterleitung-email" VARCHAR(100),
"Fakultaet" VARCHAR(100),
"SEM-Gruppe" VARCHAR(100),
"Adresse deaktiviert" VARCHAR(100),
"Eintritt" VARCHAR(100),
"2001-12-Gesendet" VARCHAR(100),
"2001-12-Antwort" VARCHAR(100),
"2003-12-Gesendet" VARCHAR(100),
"2003-12-Antwort" VARCHAR(100),
"2005-06-Gesendet" VARCHAR(100),
"2005-06-Antwort" VARCHAR(100),
"Bemerkungen" VARCHAR(100)
);
SET TABLE MATRIKEL95 SOURCE "matrikel95.csv;   fs=\semi;   ignore_first=false;   encoding=UTF-8";
INSERT INTO MATRIKEL95 SELECT * FROM "Adresstabelle-Matrikel95" ORDER BY "ID" ASC;
Dateianhänge
emailadressen-test.odb.zip
(3.66 KiB) 174-mal heruntergeladen

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: DB Migration MySQL nach LibreOffice

Beitrag von F3K Total » So 27. Okt 2013, 21:51

Nun,
wo ist das Problem mit den Anführungszeichen?
Wenn Du sie entfernen willst, kannst Du die .csv einmal mit Calc öffnen, Texttrenner Anführungzeichen und dann wieder als .csv exportieren, dann aber eben ohne Texttrenner, die sonstigen Einstellungen beibehalten (UTF8, Semikolon).
Siehe Anhang

Gruß R
Dateianhänge
matrikel95.zip
(202 Bytes) 153-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO

wartburgritter
Beiträge: 101
Registriert: Di 13. Nov 2012, 18:28

Re: DB Migration MySQL nach LibreOffice

Beitrag von wartburgritter » So 27. Okt 2013, 22:30

F3K Total hat geschrieben:Nun,
wo ist das Problem mit den Anführungszeichen?
Ich erzeuge 8 csv-dateien jeweils mit verschiedener sortierung und verschiedenen Spalten. Darüber läuft ein perlscript und erzeugt html-dateien die ich dann auf den server hochlade. Ich müsste dann 8x im Editor öffnen Anführungszeichen auswählen ersetzen mit nichts speichern. Das perlscript funktioniert auch nach jahren noch wunderbar, nur meine perlkenntnissse sind nicht mehr die besten so dass ich lieber nicht versuchen will das Anführungszeichenproblem im perlscript zu lösen. Hätte ich evtl. sagen sollen, sorry. Ich versuche immer nicht ausschweifend zu sein.

Gruss Bernd

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: DB Migration MySQL nach LibreOffice

Beitrag von F3K Total » So 27. Okt 2013, 22:53

Es gibt noch ein
SET TABLE MATRIKEL95 SOURCE "matrikel95.csv; fs=\semi; ignore_first=false;all_quoted=false;encoding=UTF-8";
, wie ich im HSQL Tutorial nachlese, aber mein erster Versuch hat nicht geklappt.
Forsch mal schön selber weiter.
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: DB Migration MySQL nach LibreOffice

Beitrag von F3K Total » So 27. Okt 2013, 23:15

Geht doch, so:

Code: Alles auswählen

SET TABLE MATRIKEL95 SOURCE "matrikel95.csv;fs=\semi;ignore_first=false;all_quoted=false;quoted=false;encoding=UTF-8";
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

wartburgritter
Beiträge: 101
Registriert: Di 13. Nov 2012, 18:28

Re: DB Migration MySQL nach LibreOffice

Beitrag von wartburgritter » So 27. Okt 2013, 23:28

F3K Total hat geschrieben:Es gibt noch ein
SET TABLE MATRIKEL95 SOURCE "matrikel95.csv; fs=\semi; ignore_first=false;all_quoted=false;encoding=UTF-8";
, wie ich im HSQL Tutorial nachlese, aber mein erster Versuch hat nicht geklappt.
Forsch mal schön selber weiter.
Gruß R
Danke für den Tip mit dem Tutorial. Ich habe dort nachgelesen. http://hsqldb.org/doc/guide/ch06.html Folgendes führt zum Erfolg. Ist zwar für mich gemäss der Doku nicht nachvollziehbar warum, aber die Anführungszeichen werden nicht exportiert.

Code: Alles auswählen

quoted=false
Besten Dank nochmals Gruss Bernd

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: DB Migration MySQL nach LibreOffice

Beitrag von F3K Total » So 27. Okt 2013, 23:34

Ganz genau!
F3K Total hat geschrieben:Geht doch, so:
Code: Alles auswählen
SET TABLE MATRIKEL95 SOURCE "matrikel95.csv;fs=\semi;ignore_first=false;all_quoted=false;quoted=false;encoding=UTF-8";
Gruß R
Lesen bildet!
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO


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