Problem mit phpmyadmin und "load data infile..."

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

  • Problem mit phpmyadmin und "load data infile..."

    Ich versuche mit PHPMyAdmin eine Datei mit der Endung .csv in eine Tabelle zu übertragen. Die .csv-Datei habe ich selbst aus einer StarOffice-Tabelle generiert, sie liegt nun in meinem SQL-Verzeichnis.
    Ich habe folgenden Code verwendet:

    LOAD DATA INFILE './verzeichnis/liste.csv' REPLACE INTO TABLE tabellenname FIELDS TERMINATED BY ';' ENCLOSED BY '"';

    PHPMyAdmin zeigte mir dann auch, dass 2500 Datensätze übertragen wurden. Als ich mir die dann anzeigen ließ, war aber nur noch die Hälfte da. Es wird nur jeder 2. Datensatz angezeigt.

    Ich habe schon versucht die Tabelle in mehreren Schritten, also in kleineren Paketen hochzuladen. Das brachte aber auch keinen Erfolg.

    Hat jemand eine Idee?

  • #2
    1. hat die datei korrekte zeilenumbrüche?

    2. sind in der datei auch alle daten drin, oder dort shon nur jeder zweite?
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Danke für die schnelle Hilfe!

      Ich habe mir die .csv-Datei noch einmal genau angesehen. Die Zeilenumbrüche sind o.k., die Daten sind auch vorhanden. Allerdings habe ich festgestellt, dass StarOffice am Ende der Zeilen kein ';' setzt und somit wurde jede zweite Zeile teilweise mit in das letzte Feld der ersten Zeile geschrieben.

      Nun suche ich nach einer Möglichkeit, die Zeichen automatisch dahinter zu setzten. Leider funktioniert das mit Reihe vervollständigen in StarOffice nicht. Hoffentlich finde ich noch eine Möglichkeit!

      Kommentar


      • #4
        notfalls kannst du die datei ja auch vorher mittels php zeilenweise einlesen, die ; am ende dran schreiben und wieder speichern.
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          Nochmals Danke für die Hilfe!

          Ich habe an die Tabelle nun am Anfang eine weitere Spalte mit einer Durchnummerierung drangefügt, sie in eine .txt-Datei umgewandelt, meine Spaltengröße der Datenbank etwas erweitert und folgenden Befehl verwendet:

          load data infile './ordner/ordner.txt' ignore into table 'tabellenname' fields terminated by '\t' optionally enclosed by ' ' lines terminated by '\n';

          Uns tatsächlich sind nun alle Daten dort wo sie hingehören!

          Kommentar

          Lädt...
          X