Grundlegendes zu Fehlern bei Spaltenanzahl-Konflikten in SQL
Beim Füllen einer Datenbanktabelle mit Daten mithilfe von SQL-INSERT-Anweisungen tritt der Fehler „Spaltenanzahl stimmt nicht“ auf „Wertanzahl in Zeile stimmt nicht überein“ kann frustrierend sein. Dieses Problem tritt auf, wenn die Anzahl der Spalten in der INSERT-Anweisung nicht mit der Anzahl der Spalten in der Zieltabelle übereinstimmt.
In Ihrem Fall, wenn Sie versuchen, Daten mit der folgenden Anweisung in die Tabelle wp_posts einzufügen:
INSERT INTO `wp_posts` VALUES(5, 5, '2005-04-11 09:54:35', '2005-04-11 17:54:35'
Sie erhalten diesen Fehler, weil die Tabelle wp_posts mehr Spalten enthält, als Sie in der INSERT-Anweisung angegeben haben. Der erste Wert, in Ihrem Beispiel 2781,3, stellt Zeile 2781 und Spalte 3 der Tabelle korrekt dar. Der zweite Wert, 5,5, impliziert jedoch eine Zeilen- und Spaltenanzahl von jeweils 5, aber die Tabelle hat wahrscheinlich mehr Spalten.
Um dieses Problem zu beheben, müssen Sie Werte für alle Spalten in der Tabelle angeben, wenn Einfügen eines neuen Datensatzes. Sie können dies tun, indem Sie die Spaltennamen explizit in Ihrer INSERT-Anweisung angeben:
INSERT INTO `wp_posts` (column_name1, column_name2, ...) VALUES (1, 3, ...)
Stellen Sie sicher, dass die von Ihnen angegebenen Spaltennamen der Reihenfolge der Spalten in der Tabellendefinition entsprechen.
Denken Sie daran INSERT-Anweisungen werden zum Erstellen neuer Datensätze in einer Tabelle verwendet, nicht zum Ändern vorhandener Datensätze. Zum Ändern von Daten in vorhandenen Datensätzen verwenden Sie stattdessen die UPDATE-Anweisung.
Das obige ist der detaillierte Inhalt vonWarum führt meine SQL-INSERT-Anweisung zu dem Fehler „Spaltenanzahl stimmt nicht mit Wertanzahl in Zeile überein'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!