CSV Datei importieren

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

daneb
Beiträge: 2
Registriert: Fr, 03.05.2013 10:31

CSV Datei importieren

Beitrag von daneb »

Hallo,
ich versuche zur Zeit eine CSV Datei in die Datenbank zu laden. Habe die Struktur der Datenbank angelegt sind nur 15 Felder. Die CVS Datei hat über 1 Mio. Datensätze. Wenn ich auf öffnen gehe und versuche die CSV Datei zu laden, werden die Daten aber immer in Calc geladen. Natürlich dann nicht alle Datensätze.
Was mache ich falsch, habe ich die Felder der Datenbank falsch angelegt? Ist das vorher überhaupt notwendig. Kann mir Jemand einen Tipp geben wie ich vorgehen soll?

Schöne Grüße

Uwe
Zuletzt geändert von daneb am Fr, 03.05.2013 13:57, insgesamt 1-mal geändert.
juetho
******
Beiträge: 617
Registriert: Di, 20.04.2010 15:46
Wohnort: Berlin

Re: CSV-Datei importieren

Beitrag von juetho »

Hallo und willkommen im Forum,

als Erstes bitte ich dich dringend: Ändere deinen ersten Beitrag einschließlich Betreff; das Dateiformat heißt CSV (nicht CVS). Wenn das nicht korrigiert wird, will die Suche mit dieser Diskussion nichts anfangen. Vielleicht hast du auch bei der Suche das falsche Kürzel als Suchbegriff eingegeben; sonst könnte einer der 304 vorhandenen Beiträge helfen.

Nach der LibO-Hilfe ist es offensichtlich so, dass CSV nur in Calc importiert werden kann und anschließend eine Calc-Tabelle nach Base geholt wird. Beides geht grundsätzlich problemlos. (Nun ja, bei 1 Mio. Datensätze könnte Calc zumindest hinsichtlich der Geschwindigkeit überfordert werden.)

Eine Alternative ist der abschnittsweise Import über Calc von je 100.000 Datensätzen.

Eine andere Alternative ist ein Makro, was allerdings auch "nicht ohne" ist. Pitonyak (eine der wichtigsten Informationsquellen) bietet Erläuterungen zum Lesen und Schreiben von CSV-Dateien, schreibt aber auch:
The CSV filter options are complicated.
Wenn du dich mit Makros bereits auskennst, möchte ich diesen Weg empfehlen. Das gilt auch und vor allem dann, wenn es sich nicht um einen einmaligen Datenimport handelt, sondern diese Aufgabe immer wieder vorkommt.

Gruß Jürgen
Situation: LibO 3.6 auf Win 7 Home Premium (64-bit) mit MySQL (localhost) über JDBC
RobertG
********
Beiträge: 2047
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: CSV Datei importieren

Beitrag von RobertG »

Hallo Uwe,

ein entsprechendes Makrobeispiel liegt den Beispieldatenbanken des Base-Handbuchs bei. Ich hänge das einmal an. Habe ich aber nur bei ein paar Datensätze laufen lassen.
Wenn ich "1 Mio. Datensätze" lese, dann kommt bei mir das Gruseln. Jetzt kommt es ganz darauf an, mit welchem Programm (Version von OOo bzw. LO) Du darauf zugreifen willst. Die Versionen von LO ab 3.5.0 haben da empfindliche Geschwindigkeitsprobleme ...

Gruß

Robert
Dateianhänge
Beispiel_CSV_Import.odb
CSV-Import nach Base, Makros
(23.94 KiB) 404-mal heruntergeladen
juetho
******
Beiträge: 617
Registriert: Di, 20.04.2010 15:46
Wohnort: Berlin

Re: CSV Datei importieren

Beitrag von juetho »

RobertG hat geschrieben:ein entsprechendes Makrobeispiel liegt den Beispieldatenbanken des Base-Handbuchs bei.
Ich hatte im Handbuch selbst gesucht und dort nichts gefunden.
Wenn ich "1 Mio. Datensätze" lese, dann kommt bei mir das Gruseln. Jetzt kommt es ganz darauf an, mit welchem Programm (Version von OOo bzw. LO) Du darauf zugreifen willst. Die Versionen von LO ab 3.5.0 haben da empfindliche Geschwindigkeitsprobleme ...
Eine "richtige" relationale Datenbank hat mit solchen Datenmengen keine Probleme. Dann ist vielleicht zu empfehlen, eine solche Datenbank zu verwenden und mit Base zu verknüpfen. Für MySQL ist das im Base-Handbuch Seite 28 ff. beschrieben. Jürgen

PS. Danke für die Korrektur von Thema und Frage.
Situation: LibO 3.6 auf Win 7 Home Premium (64-bit) mit MySQL (localhost) über JDBC
Benutzeravatar
boser
*****
Beiträge: 264
Registriert: Mi, 02.09.2009 08:28
Kontaktdaten:

Re: CSV Datei importieren

Beitrag von boser »

Hallo,

jetzt weiss ich nicht, ob ich es richtig mache, oder ob ich was überlesen habe.
Bei der Überschrift ist mir sofort der Befehl "Bulk" in den Sinn gekommen, der daten in und aus einer Datenbank inportieren , bzw. exportieren kann.
Beshalb hab ich etwas gegooglet und das gefunden, http://db.apache.org/derby/docs/10.4/to ... 16245.html

Bitte nicht schlagen, wenn es total daneben ist. :lol:
mfg
boser

linux suse 11.4 / 12.2 ; LibreOffice 3.4.2
juetho
******
Beiträge: 617
Registriert: Di, 20.04.2010 15:46
Wohnort: Berlin

Re: CSV Datei importieren

Beitrag von juetho »

boser hat geschrieben:Bitte nicht schlagen, wenn es total daneben ist. :lol:
Dafür gibt es überhaupt keinen Grund; das hier benötigte Verfahren wird tatsächlich "bulk import" genannt. Ich habe nur noch nichts für CSV > Base/HSQL gesehen, und auch bei deinem Link muss man sich vermutlich mit dem JDBC-Weg genauer beschäftigen. Jürgen
Situation: LibO 3.6 auf Win 7 Home Premium (64-bit) mit MySQL (localhost) über JDBC
Benutzeravatar
boser
*****
Beiträge: 264
Registriert: Mi, 02.09.2009 08:28
Kontaktdaten:

Re: CSV Datei importieren

Beitrag von boser »

Da steht der Befehl mit seiner Struktur . http://msdn.microsoft.com/de-de/library/ms188365.aspx
ich hab es schon mal mit csv , text , excel , usw. Dateien gemacht, geht ohne
juetho hat geschrieben:JDBC-Weg
mfg
boser

linux suse 11.4 / 12.2 ; LibreOffice 3.4.2
daneb
Beiträge: 2
Registriert: Fr, 03.05.2013 10:31

Re: CSV Datei importieren

Beitrag von daneb »

Hallo,
vielen Dank für die Info´s ich versuche mal daraus für mich etwas zu nutzen. Bin nicht ganz so versiert wie Ihr. Eine direkte Funktion für den Import von CSV Dateien scheint es also nicht zu geben. Wenn ich es nicht hinbekommen sollte, versuche ich es im Büro mit Access mal. Danke nochmal werde berichten, ob ich etwas zustande bekommen habe. Mir ist noch eingefallen ich könnte die Datei mit einem Editor auch teilen und dann die geteilten Teile in die Datenbank oder Calc laden. Schöne Grüße Uwe
Antworten