LOAD DATA INFILE Spalte "ID"

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • LOAD DATA INFILE Spalte "ID"

    Hi,

    bevor ich hier lange um den heißen Brei rede, komm ich lieber direkt zur Sache:

    Ich habe eine *.csv-Datei mit mehreren Spalten und Zeilen getrennt durch ein ";". Die erste Spalte der Tabelle heißt "ID", und ist logischerweise auch der PK. Als nächstes kommen die Spalten in die die Daten aus der CSV-Datei sollen.
    Mit dem Befehl "LOAD DATA INFILE" lade ich die Daten rein, das klappt auch alles super.

    Das Problem ist nun, dass er die erste Spalte aus der CSV-Datei in die erste Spalte der Tabelle, also "ID" reinläd, wobei er "ID" überspringen soll.

    Wie sag ich meiner MySQL-DB, dass er "ID" Überspringen soll, und erst bei Spalte 2 anfangen soll, mir die Daten zu Importieren?

    PHP-Code:
    mysql_query('LOAD DATA LOCAL INFILE "ecdl.csv" IGNORE INTO TABLE ecdl FIELDS TERMINATED BY ";" LINES TERMINATED BY "\\n";') or die('Error loading data file.<br>' mysql_error()); 
    Die Spalte "ID" ist vom Datentyp "INT", "NOT NULL" und "auto_increment".

  • #2
    Re: LOAD DATA INFILE Spalte &quot;ID&quot;

    Original geschrieben von Gleni
    bevor ich hier lange um den heißen Brei rede,
    ... poste ich meine frage mal ohne nachzudenken unter "PHP", obwohl sie damit null zu tun hat.

    *seufz* *verschieb*


    LOAD DATA LOCAL INFILE "ecdl.csv" IGNORE INTO TABLE ecdl FIELDS TERMINATED BY ";" LINES TERMINATED BY "\\n"

    das schlüsselwort IGNORE klingt ja schon mal ganz nett, oder was meinst du?
    INTO TABLE zu "ignorieren" ist allerdings ziemlicher unfug.

    also wirf doch mal einen blick ins mysqml-manual ...
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar

    Lädt...
    X