Dies ist eine alte Version des Dokuments!


LU13a: Datenimport & -export (CSV)

Sie können …

  • CSV-Dateien mit dem WebStorm-Datenbank-Plugin importieren (in bestehende oder neue Tabellen).
  • Tabellen- oder Abfrageergebnisse als CSV/Excel/JSON exportieren.
  • typische Stolpersteine (Trennzeichen, Encoding, Datum/Zahlen, Header-Zeile) erkennen und beheben.
  • Vor- und Nachteile von CSV vs. SQL-Skript benennen.

 Bild CSV-Daten Auschnitt einer CSV-Datei mit (fiktiven) Daten über Mitarbeiter:innen eines Unternehmens.

CSV1) sind einfache Textdateien (Dateiendung .csv), in denen Daten zeilenweise gespeichert werden; Spalten werden durch ein Trennzeichen getrennt (z. B. Komma oder Semikolon).

Vorteile von CSV

  • Universell: Fast jede Anwendung (Excel, Google Sheets, Datenbanken) kann CSV exportieren/importieren.
  • Einfach & schnell: Ideal für Importe mit viel Daten. Es ist keine zusätzliche Software nötig, um die Datei zu lesen.

Eigenschaften von CSV

  • Trennzeichen: Komma (,) oder Semikolon (;) konsistent verwenden.
  • Encoding: UTF-8 wählen, damit Umlaute richtig formatiert werden.
  • Header-Zeile: Beim Import, erste Zeile als Spaltenkopf markieren (First row is header).
  • Datentypen/Formate: Beim Import Zahlen, Datumsformate (z. B. YYYY-MM-DD) und Dezimaltrennzeichen (Punkt vs. Komma) prüfen.
  • Verknüpfungen nach dem Import setzen: CSV enthält keine Constraints2); die Struktur verwaltet die Datenbank.

Über die Webstorm-Benutzeroberfläche und via SQL-Code LOAD DATA LOCAL INFILE

Methode Was ist das? Vorteile Nachteile
GUI in WebStorm Import/Export von nur Daten aus/zu CSV-Dateien Schnell, einfach, keine CLI3) nötig Keine Struktur/Constraints4), Datentypen/Format genau prüfen
SQL-Skript5) Enthält Struktur (DDL) und Daten (INSERTs) Reproduzierbar6), portabel7) Mehr Aufwand beim Erstellen, bei sehr viele Datensätzen u. U. langsamer

Ziel: CSV-Datei (z. B. genres.csv) in die Datenbank letterboxd_film_db (vorher selbst erstellen – s. Video oben) laden.

  • Rechtsklick auf SchemaImport/Export → Import Data from File(s).
  • CSV auswählen → Datentypen prüfen: Entsprechende Datentypen anpassen → z.B. genre Spalten von text zu VARCHAR(50) konvertieren.
  • Vorschau kontrollieren → Apply/OK.

CSV-Import-Dialog (Mapping)  CSV-Import: Mapping

Wir laden die Datei genres.csv (z. B. aus einer letterboxd8)-Datenbank) in die Tabelle genres.

Voraussetzungen

  • Verbindung in WebStorm ist aktiv.
  • In den Data-Source-Eigenschaften ist AllowLoadLocalInfile auf TRUE gesetzt (im oben angezeigten Video gezeigt).

Tabelle anlegen

CREATE TABLE IF NOT EXISTS genres (
  id     BIGINT      NOT NULL,
  genre  VARCHAR(50) NOT NULL,
);

Import mit LOAD DATA LOCAL INFILE

LOAD DATA LOCAL INFILE '/Pfad/zu/genres.csv'
INTO TABLE genres
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES  TERMINATED BY '\n'
IGNORE 1 ROWS;

Hinweise

  • Header-Zeile: Durch IGNORE 1 ROWS wird die Kopfzeile übersprungen.
  • Trennzeichen: Für dieses CSV Komma als Separator, UTF-8 als Zeichensatz.
  • Windows: Falls nötig LINES TERMINATED BY '\r\n' verwenden.
  • Mehrfach-Genres: In der Tabelle kommen mehrere Einträge doppelt vor (z.B. .

Ziel: Tabelleninhalte oder Abfrageergebnis exportieren.

  • Tabelle öffnen oder SELECT-Resultat anzeigen.
  • Toolbar: Export Data → Format wählen (CSV/Excel/JSON/Markdown …).
  • Optionen:
    • Add column header (Spaltennamen in erster Zeile)
    • Transpose (optional)
    • Output file wählen → Export to File.

Export von Resultaten von SELECT-Abfragen  Export Data: SELECT-Resultat Export einer ganzen Tabelle  Export Data: ganze Tabelle Optionen für den CSV-Export  Export Data: SELECT-Resultat - Optionen

  • CSV ist ideal für Testdaten und schnelle Massenimporte.
  • Achten Sie auf Trennzeichen, Encoding, Datentypen.
  • Für Backups und Migration ganzer Datenbanken ist ein Dump in eine SQL-Skript (nächste Seite) besser geeignet (Struktur + Daten).

1)
CSV = Comma Separated Values
2) , 4)
Integritätsregeln wie Primär-/Fremdschlüssel
3)
CLI = Command Line Interface
5)
Textdatei mit SQL-Befehlen; meist Endung .sql
6)
bei erneutem Ausführen gleiches Ergebnis
7)
leicht auf andere Server/PCs übertragbar
8)
Film-Community-Plattform
  • modul/m290_guko/learningunits/lu13/theorie/a_data_import.1763922773.txt.gz
  • Zuletzt geändert: 2025/11/23 19:32
  • von gkoch