Warum erhalte ich in meiner MySQL-Abfrage den Fehler „Kolumne Spaltenanzahl in Zeile 1'?

Patricia Arquette
Freigeben: 2024-10-27 10:20:31
Original
167 Leute haben es durchsucht

Why am I getting the

PHP-, MySQL-Fehler: Spaltenanzahl stimmt in Zeile 1 nicht überein

Dieser Fehler: „Die Spaltenanzahl stimmt nicht mit der Wertanzahl in Zeile 1 überein.“ ", weist auf eine Diskrepanz zwischen der Anzahl der Spalten, in die Sie Daten einfügen möchten, und der tatsächlichen Anzahl der bereitgestellten Werte hin.

Im bereitgestellten Codeausschnitt versuchen Sie, Daten in eine Tabelle einzufügen 9 Spalten (id, Name, Beschreibung, shortDescription, Zutaten, Methode, Länge, dateAdded, Benutzername) mit 8 Werten ($name, $description, $shortDescription, $ingredients, $method, $username, $length, $dateAdded).

Fehlerursache:

Der Fehler tritt auf, weil zwischen der Anzahl der in der INSERT-Abfrage definierten Spalten und der Anzahl der an sie übergebenen Werte eine Diskrepanz besteht . In diesem Fall erwartet die Abfrage 9 Werte, es werden jedoch nur 8 bereitgestellt, mit Ausnahme der Spalte „Bild“.

Lösung:

Um den Fehler zu beheben, stellen Sie sicher dass die Anzahl der Werte mit der Anzahl der Spalten in der INSERT-Abfrage übereinstimmt. Sie können entweder den fehlenden Wert für die Spalte „Bild“ hinzufügen oder ihn aus der Liste der Spalten entfernen, in die eingefügt wird.

Codeänderung:

Option 1: Fügen Sie den fehlenden Wert hinzu

<code class="php">$query = sprintf("INSERT INTO dbname (id, Name, Description, shortDescription, Ingredients, Method, Image, Length, dateAdded, Username) VALUES ('', '%s', '%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),
    '', // Placeholder for empty 'image' value
    mysql_real_escape_string($length),
    mysql_real_escape_string($dateAdded),
    mysql_real_escape_string($username));</code>
Nach dem Login kopieren

Option 2: Entfernen Sie die Spalte „Bild“

<code class="php">$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));</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum erhalte ich in meiner MySQL-Abfrage den Fehler „Kolumne Spaltenanzahl in Zeile 1'?. 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!