Seite 1 von 2
[Gelöst] Problem beim Einlsesen von csv-Daten
Verfasst: Mo 28. Mär 2016, 13:56
von Grafino
Hi zusammen,
ich will Daten aus einer csv-Tabelle in eine Basetabelle einfügen. Versucht habe ich es mit den Befehlen:
INSERT INTO "Reporttbl" SOURCE report.csv;encoding;UTF-8;
Fehlermeldung: Unexpected token: SOURCE in statement [INSERT INTO "Reporttbl" SOURCE]
INSERT INTO Reporttbl FROM report.csv;encoding;UTF-8;
Fehlermeldung: Unexpected token: FROM in statement [INSERT INTO "Reporttbl" FROM]
Ich weiss gerade nicht, wo ich hänge und brauche Hilfe

Re: Problem beim Einlsesen von csv-Daten
Verfasst: Mo 28. Mär 2016, 17:06
von gogo
Wie kommst Du auf den Gedanken, dass "SOURCE" ein gültiger SQL-Befehl/Parameter/Kommando sein soll?
Es gibt verschiedene Möglichkeiten wie man Daten in eine Base-DB einfügen kann. Was am besten verwendet wird, hängt vom jeweiligen Base-Backend und von der Art der einzufügenden Daten ab.
Re: Problem beim Einlsesen von csv-Daten
Verfasst: Mo 28. Mär 2016, 17:16
von Freischreiber
Hallo Grafino,
das Thema wurde schon mal hier besprochen, wo unterschiedliche Lösungsansätze erwähnt werden:
http://www.libreoffice-forum.de/viewtop ... =6&t=15441
Gruß
Freischreiber
Re: Problem beim Einlsesen von csv-Daten
Verfasst: Mo 28. Mär 2016, 18:02
von F3K Total
Hi,
am leichtesten ist es, die .csv in Calc zu importieren und dann per DRAG/DROP in eine BASE Tabelle zu schreiben. Siehe auch
Videotutorial 8.
Gruß R
Re: Problem beim Einlsesen von csv-Daten
Verfasst: So 3. Apr 2016, 12:58
von RobertG
Hallo *,
ich weiß, woher die Geschichte mit SOURCE kommt:
Code: Alles auswählen
SET TABLE "Adressen" SOURCE "Adressen.csv;encoding=UTF-8"
Wird innerhalb einer HSQLDB eine Texttabelle eingebunden, so wird zuerst die Tabelle über
definiert und anschließend kann mit SOURCE dieser Textabelle eine *.csv-Tabelle als Datengrundlage zugewiesen werden (Handbuch, Datenbank erstellen → Texttabellen).
Gruß
Robert
Re: Problem beim Einlsesen von csv-Daten
Verfasst: So 3. Apr 2016, 17:15
von Grafino
Schon mal besten Dank für die Antworten
RobertGhat die Frage mit der Herkunft von Source schon beantwortet. Was den Rest angeht: Danke für den Hinweis mit den anderen Antworten. Habe ich mit der SuFu nicht gefunden, werde mir aber damit mal eine Weile den Kopf zerbrechen und mal sehen, wie weit ich komme!
Den Umweg über die ods will ich vermeiden

Ich mache mir die Arbeit für einen bekannten und hoffe, das Ganze mit allen Aufgabenstellungen automatisieren zu können.
Re: Problem beim Einlsesen von csv-Daten
Verfasst: So 3. Apr 2016, 20:22
von RobertG
Hallo Grafino,
dann mach es doch so, wie in dem Handbuch beschrieben:
1. Texttabelle über SQL erstellen - sollte nicht beschreibbar sein, benötigt also auch keinen Primärschlüssel.
2. Source für diese Texttabelle festlegen. Diese muss aber genau den Spalten entsprechen - nicht also plötzlich anders aussehen.
3. Kopieren der Inhalte dieser Tabelle in die Zieltabelle:
Code: Alles auswählen
INSERT INTO "Tabellenname" ("Feldname") SELECT "anderer_Feldname" FROM "Name_anderer_Tabelle";
Du musst die einzelnen Felder der aufnehmenden Tabelle benennen, wenn die abgebende Tabelle nicht genau die gleiche Feldreihenfolge hat. Das wird vermutlich nicht der Fall sein - allein schon, weil ein Primärschlüssel fehlt.
Gruß
Robert
Re: Problem beim Einlsesen von csv-Daten
Verfasst: So 10. Apr 2016, 18:08
von Grafino
Ok...das mit dem erstellen der Texttabelle funktionert. Das mit dem Einlesen über Insert hakt noch ein wenig. Wenn Ihr vom Handbuch redet, meint Ihr vermutlich das Base Gesamtband_V35.pdf!?
Da steht nichts von Texttabellen drin..ihr meint vermutlich den Absatz mit Tabellendokumenten. ICh stehe da nämlich aktuell immer vor dem Problem, wie ich jeden Monat ohne grossen Aufwand die csv in die DB bekomme, ohne jedes mal den Umweg über eine neue DB zu machen..oder ich habe da wieder einen blockierenden Denkfehler!
Vielen Dank für die Hilfe..habe jetzt noch einiges, was ich lösen muss. Ich befürchte, ich melde mich wieder

Re: Problem beim Einlsesen von csv-Daten
Verfasst: So 10. Apr 2016, 20:03
von RobertG
Hallo Grafino,
lade Dir das aktuelle Handbuch aus dem Netz (siehe auch der Link in meiner Signatur). Die Version V35 hat 303 Seiten, die aktuelle ist mit 549 Seiten fast doppelt so umfangreich. Und in der aktuellen Version steht etwas zu Texttabellen als Teil der Tabellen einer internen HSQLDB - als ich die V35 geschrieben habe, hatte ich die noch gar nicht entdeckt.
Gruß
Robert
Re: Problem beim Einlsesen von csv-Daten
Verfasst: So 10. Apr 2016, 21:00
von Grafino
Jaaaa...aktuelle Infos sollen ja helfen.

Habe mich von Deinen Versionsnummern irritieren lassen: Ich habe die mit den V-Nr. des LO in Bezug gesetzt

. In dem aktuellen steht ja überraschenderweise tatsächlich mehr drin

.
Mal sehen, wie gut ich Deine Lektionen umsetzen kann! Großes Lob und Danke auf jeden Fall für das Buch!