it-swarm.com.de

Ungültige Spaltenanzahl in der CSV-Eingabe in Zeile 1 Fehler

Ich versuche, eine ".csv" -Datei mit phpMyAdmin in eine SQL-Datenbank zu bekommen. Immer wenn ich es importiere, erhalte ich die Fehlermeldung: Ungültige Spaltenanzahl in der CSV-Eingabe in Zeile 1. Ich habe den ganzen Tag mit verschiedenen Optionen herumgespielt, um zu versuchen, sie zum Erfolg zu bringen, aber ohne Erfolg. Es gibt genau 47 Spalten in meiner CSV-Datei. Ich habe 47 Spalten in meiner SQL-Tabelle erstellt. Die Namen stimmen jedoch nicht genau mit denen in der Datei überein. Immer wenn ich importiere, gibt es mir diesen Fehler. Jede Hilfe wäre sehr dankbar! ~ Carpetfizz Eine Sache, von der ich dachte, dass sie das Problem verursachen könnte, war, dass die erste Spalte nichts in meinem Excel-Dokument enthält. Könnte dies ein Problem verursachen?

BEARBEITUNG 12:30 Uhr: phpMyAdmin ist bereits die neueste Version verfügbar (über apt-get install phpmyadmin) (phpmyadmin ist bereits die neueste Version).

Space in A1

Hier ist die CSV-Datei, wenn das hilft.

29
Carpetfizz

Fest! Ich habe im Grunde nur "Import" gewählt, ohne selbst einen Tisch zu machen. phpMyAdmin hat die Tabelle mit allen richtigen Spaltennamen aus dem Originaldokument für mich erstellt. 

40
Carpetfizz

Wenn Ihre DB-Tabelle bereits vorhanden ist und Sie NICHT alle Spalten der Tabelle in Ihre CSV-Datei aufnehmen möchten, müssen Sie beim Ausführen von PHP Admin Import das Feld Spaltennamen in den formatspezifischen Optionen ausfüllen für CSV - Hier am unteren Rand des folgenden Screenshots dargestellt.

In Summe:

  • Wählen Sie eine CSV-Datei
  • Stellen Sie das Format auf CSV ein
  • Füllen Sie das Feld "Spaltennamen" mit den Namen der Spalten in Ihrer CSV
  • Wenn Ihre CSV-Datei die Spaltennamen in Zeile 1 enthält, setzen Sie "Überspringen Sie diese Anzahl von Abfragen (für SQL) oder Zeilen (für andere Formate), beginnend mit der ersten" auf 1

enter image description here

55

Beim Importieren einer CSV-Datei mit phpMyAdmin wurde dieselbe Fehlermeldung angezeigt. 

Lösung für mein Problem war, dass mein Computer die CSV-Datei mit gespeichert hat; (Semikolon) als Trennzeichen anstelle von (Kommas). 

In den formatspezifischen Optionen können Sie jedoch "Spalten getrennt:" auswählen und auswählen; anstelle von (Komma). 

Öffnen Sie die CSV-Datei in einem Texteditor, um zu sehen, in was Ihr Computer die Datei speichert. 

10
Nicholas

Ich hatte gerade dieses Problem und erkannte, dass leere Spalten als Spalten mit Werten behandelt wurden. Ich sah dies, indem ich meine CSV in meinem Texteditor öffnete. Um dies zu beheben, öffnete ich meine Tabelle und löschte die Spalten nach der letzten Spalte. Sie sahen völlig leer aus, waren es aber nicht. Nachdem ich dies getan hatte, funktionierte der Import perfekt. 

1
Cody O'Dell

Hatte das gleiche Problem und hat zwei Änderungen vorgenommen: (a) Überschrieb keine vorhandenen Daten (nicht ideal, wenn dies Ihre Absicht ist, Sie können jedoch vorher eine Löschabfrage ausführen), und (b) die Spalten gezählt und festgestellt haben, dass die CSV dies getan hat Eine leere Spalte, so dass es sich immer lohnt, zu Ihrer ursprünglichen Arbeit zurückzukehren, auch wenn alle scheinbar richtig aussehen.

1
Rule

Sie müssen die erste Zeile (in der Spaltennamen definiert sind) überspringen, und Sie müssen prüfen, welches "Zeichen" die Zellen voneinander trennt (normalerweise ,, in meinem Fall ;)

Bellow ist das Bild meines Imports:

 enter image description here

1
raBne

Bei Fehlern mit Eingabedateien jeglicher Art sind Probleme bei der Codierung häufig.

Eine einfache Lösung könnte darin bestehen, eine neue Datei zu öffnen, den CSV-Text darin einzufügen und dann als neue Datei zu speichern.

0
P-S

Ich hatte ein ähnliches Problem mit phpmyAdmin. Die Spaltenanzahl in der zu importierenden Datei stimmte mit den Spalten in der Zieldatenbanktabelle überein. Ich habe versucht, Dateien im .csv- und .ods-Format zu importieren, ohne Erfolg. Dabei wurden verschiedene Fehler ausgegeben, darunter auch ein Argument, dass die Spaltenanzahl falsch war.

Sowohl die .csv- als auch die .ods-Datei wurden mit LibreOffice 5.204 erstellt. Basierend auf ein wenig Erfahrung mit Importproblemen in den vergangenen Jahren entschied ich mich, die Dateien mit der gnumeric-Tabelle neu zu erstellen und die .ods gemäß dem strengen Formatstandard zu exportieren. Voila! Kein Importproblem mehr. Obwohl ich keine Zeit hatte, das Problem weiter zu untersuchen, vermute ich, dass sich in der internen Struktur von LibreOffice etwas geändert hat.

0
Bill Wilken

Ihre Lösung scheint davon auszugehen, dass Sie eine völlig neue Tabelle erstellen möchten. 

Wenn Sie jedoch Inhalt zu einer bereits vorhandenen Tabelle hinzufügen möchten, schauen Sie in der Struktur der Tabelle nach und notieren Sie sich die Anzahl der Spalten (die Spalte id, falls Sie noch eine Anzahl haben -> obwohl es möglicherweise eine automatische Erhöhung/Eindeutigkeit gibt) 

Also wenn Ihre Tabelle so aussiehtid Name Alter Geschlecht 

stellen Sie sicher, dass Ihre Excel-Tabelle wie folgt aussieht: A1 id B1 Name C1 Alter D1 Geschlecht

und jetzt haben beide 4 Spalten.

Auch direkt beim partiellen Import, neben dem Überspringen der Anzahl der Abfragen .... Erhöhen Sie die Anzahl, um die entsprechende Zeile zu überspringen. Bei Auswahl von 1 wird die erste Zeile automatisch übersprungen. Für diejenigen, die möglicherweise Kopfzeilen in den Excel-Dateien haben

0
Joseph Quaye

Wenn die Tabelle bereits erstellt wurde und Sie so faul waren, die Spalten in den Feldnamen nicht anzugeben, müssen Sie nur die leeren Spalten rechts neben dem Dateiinhalt auswählen und löschen.

0
Yazid Erman

Die dümmste Sache, die jemals diesen Fehler in Microsoft Excel behebt (vorausgesetzt, Sie haben eigentlich alles andere richtig): 

Wählen Sie Ihre Daten aus und klicken Sie in Excel auf "Alle Ränder" (umrahmt Ihre Daten mit visuellen Rändern), bevor Sie die CSV-Datei speichern. Ton sinnlos? Ich stimme vollkommen zu! Dieser Fehler wird jedoch behoben. Ich benutze diesen Trick mindestens dreimal pro Woche.

0
jtubre

Die letzte Spalte meiner Datenbank (Spalte F in der Kalkulationstabelle) wird nicht verwendet und ist daher leer. Beim Importieren der Excel-CSV-Datei wurde der Fehler "Spaltenanzahl" angezeigt.

Dies liegt daran, dass Excel nur die von mir verwendeten Spalten gespeichert hat. A-E 

Durch Hinzufügen einer 0 zur ersten Zeile in F wurde das Problem behoben. Nach dem erfolgreichen Hochladen wurde es gelöscht.

Hoffe das hilft und erspart jemandem Zeit und Haarausfall :)

0
Netwise Spain