Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme mit dem csv-Import in phpmyadmin

Einklappen

Neue Werbung 2019

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

  • Probleme mit dem csv-Import in phpmyadmin

    Hallo,

    ich habe eine csv Datei mit Excel bearbeitet und will diese nun per Importfunktion in phpmyadmin einfügen.

    Es kommt allerdings immer die Fehlermeldung:

    "ungültige Anzahl an Feldern in Zeile 17"

    Was hat das zu bedeuten? Finde im Netz nichts zu dieser Meldung - die Parameter bzw. Anzahl der Felder stimmen aber zu 100% überein - Sowohl die Tabelle als auch die csv Datei haben 19 Spalten...

  • #2
    Hast Du die Excel Datei mal, oder kann es sein, dass Du Zellen miteinander verbunden hast?? Anhand der Informationen ist es sehr schwer zu sagen, was dein Problem genau ist!

    Wolf29
    while (!asleep()) sheep++;

    Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.

    Kommentar


    • #3
      Zitat von wolf29 Beitrag anzeigen
      Hast Du die Excel Datei mal, oder kann es sein, dass Du Zellen miteinander verbunden hast?? Anhand der Informationen ist es sehr schwer zu sagen, was dein Problem genau ist!

      Wolf29
      ist eine Export von Produktdaten - wie soll ich die Tabelle mit 8000 Zeilen hier posten!? Als verbunden ist nichts. ich habe lediglich eine Spalte hinzugefügt und das wars? Da kann gar nichts verbunden worden sein oder so. Selbst wenn ich die Zeile 17 (die ja anscheinend nicht geht) lösche gibt er mir den selben Fehler - deswegen denke ich liegt es an etwas anderem - nur was?!

      Kommentar


      • #4
        Sowas kann passieren, wenn Spaltenbegrenzer-Zeichen (Hochkomma) innerhalb der Daten auftauchen und nicht entsprechend der Importerregeln escaped wurden.
        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

        Kommentar


        • #5
          Ansonsten erzeug dir in Excel direkt den SQL Code und spiele das dann so ein. Dann siehste auch direkt den Fehler. Wobei ein Blick ins CSV sicherlich auch den Fehler finden sollte

          Kommentar


          • #6
            Zitat von lstegelitz Beitrag anzeigen
            Sowas kann passieren, wenn Spaltenbegrenzer-Zeichen (Hochkomma) innerhalb der Daten auftauchen und nicht entsprechend der Importerregeln escaped wurden.
            Das habe ich mir auch schon fast gedacht aber gibt es da nichts was man machen kann das es ein "autoescape" gibt?" Sonst muss ich ja alles selbst escapen und das ist nicht so schön...

            Kommentar


            • #7
              Beim CSV-Export ist es sinnvoll anzugeben, dass die Felder in Hochkommas geschrieben werden:

              "feld1","feld2",feld3"

              usw.

              Importierst du das mit phpmyadmin oder mit einem eigenen Script?

              Als umschließendes Zeichen kannst du auch etwas nehmen, was garantiert nicht in den Daten vorkommt, z.B. $$$ o.ä.
              [PHP]if ($var != 0) {
              $var = 0;
              }[/PHP]

              Kommentar


              • #8
                Zitat von Wolla Beitrag anzeigen
                Beim CSV-Export ist es sinnvoll anzugeben, dass die Felder in Hochkommas geschrieben werden:

                "feld1","feld2",feld3"

                usw.

                Importierst du das mit phpmyadmin oder mit einem eigenen Script?

                Als umschließendes Zeichen kannst du auch etwas nehmen, was garantiert nicht in den Daten vorkommt, z.B. $$$ o.ä.
                So werden die Daten auch exportiert - aber ich kann den export nicht wirklich weiter beeinflußen (externer Server mit exportprogramm) aber dann bearbeite ich halt noch händisch und dann ist bei excell mit csv die trennung automatisch so:

                feld1;feld2;feld3;

                kann ich das ändern?

                gibt es da keine manuals oder so wie man mit excell bearbeitete daten in myadmin importieren kann...

                Kommentar


                • #9
                  Schmeiß Excel weg und nimm das Calc-Programm von Open Office. Ich habe auch täglich mit CSV-Importen zu tun und schau mir die Dateien vorher nochmal an, und da macht OO genau das, was man braucht. Nämlich saubere Feldtrennungen.

                  Importieren mit PMA ist relativ einfach. Wenn deine CSV-Date drei Felder hat, die z.B. Name, vorwahl und rufnummer bedeuten, und die Spaltennamen der Mysql-tabelle lauten "name", "vorwahl", "rufnummer", dann machst du das so:

                  PMA, Tabelle auswählen dann ->Importieren anklicken
                  Datei aussuchen, Kodierung beachten
                  Dateiformat: CSV wählen
                  "Trennzeichen" wählen, "Felder eingeschlossen von" wählen
                  Bei Spaltennamen eingeben: name,vorwahl,rufnummer (NICHT in Hochkommas setzen)
                  Das wars schon.

                  Bon chance.
                  [PHP]if ($var != 0) {
                  $var = 0;
                  }[/PHP]

                  Kommentar

                  Lädt...
                  X