Warum erhalte ich in meinem PHP- und MySQL-Code die Fehlermeldung „Spaltenanzahl stimmt nicht mit Wertanzahl in Zeile 1 überein'?

Barbara Streisand
Freigeben: 2024-10-27 11:23:01
Original
753 Leute haben es durchsucht

Why am I getting the

Behebung des Fehlers „Spaltenanzahl stimmt nicht mit Wertanzahl in Zeile 1 überein“ in PHP und MySQL

Beim Versuch, Daten in eine einzufügen Wenn Sie eine MySQL-Datenbank mit PHP verwenden, tritt möglicherweise der folgende Fehler auf:

Column count doesn't match value count at row 1
Nach dem Login kopieren

Dieser Fehler tritt auf, wenn die Anzahl der in der INSERT-Abfrage bereitgestellten Werte nicht mit der Anzahl der in der Zieltabelle definierten Spalten übereinstimmt.

Die Ursache verstehen

In Ihrem Beispielcode haben Sie 9 Spalten in der INSERT-Abfrage angegeben:

INSERT INTO dbname (id, Name, Description, shortDescription, Ingredients, Method, Length, dateAdded, Username)
Nach dem Login kopieren

Sie geben jedoch nur 8 Werte an :

sprintf("INSERT INTO dbname (id, Name, Description, shortDescription, Ingredients, Method, Length, dateAdded, Username) VALUES ('', '%s', '%s', '%s', '%s', '%s', '%s', '%s')",
    mysql_real_escape_string($name),
    mysql_real_escape_string($description),
    mysql_real_escape_string($shortDescription),
    mysql_real_escape_string($ingredients),
    //mysql_real_escape_string($image),
    mysql_real_escape_string($length),
    mysql_real_escape_string($dateAdded),
    mysql_real_escape_string($username));
Nach dem Login kopieren

Daher ist MySQL nicht in der Lage, die Anzahl der bereitgestellten Werte den angegebenen Spalten zuzuordnen, was zu dem Fehler führt.

Lösung: Stellen Sie sicher, dass die Werteanzahl mit der Spalte übereinstimmt Anzahl

Um das Problem zu beheben, müssen Sie sicherstellen, dass die Anzahl der Werte in Ihrer Abfrage mit der Anzahl der Spalten in der Zieltabelle übereinstimmt. In diesem Fall haben Sie die Angabe des Methodenwerts versäumt.

Ändern Sie Ihren Code, um den fehlenden Wert einzuschließen:

$query = sprintf("INSERT INTO dbname (id, Name, Description, shortDescription, Ingredients, Method, Length, dateAdded, Username) VALUES ('', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s')",
    mysql_real_escape_string($name),
    mysql_real_escape_string($description),
    mysql_real_escape_string($shortDescription),
    mysql_real_escape_string($ingredients),
    mysql_real_escape_string($method),
    mysql_real_escape_string($length),
    mysql_real_escape_string($dateAdded),
    mysql_real_escape_string($username));
Nach dem Login kopieren

Durch die Angabe der richtigen Anzahl von Werten können Sie erfolgreich vorgehen Fügen Sie Daten in die MySQL-Datenbank ein, ohne dass der Fehler „Spaltenanzahl-Nichtübereinstimmung“ auftritt.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich in meinem PHP- und MySQL-Code die Fehlermeldung „Spaltenanzahl stimmt nicht mit Wertanzahl in Zeile 1 überein'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!