Heim >Datenbank >MySQL-Tutorial >Wie behebt man den Fehler „Spaltenanzahl stimmt nicht mit Wertanzahl überein' beim Einfügen von Daten in MySQL?

Wie behebt man den Fehler „Spaltenanzahl stimmt nicht mit Wertanzahl überein' beim Einfügen von Daten in MySQL?

DDD
DDDOriginal
2024-10-26 18:24:29484Durchsuche

How to Resolve

Einfügen von Daten aus einer Tabelle in eine andere in MySQL

Beim Versuch, Daten aus einer Tabelle in eine andere mithilfe einer Abfrage wie:

INSERT INTO mt_magazine_subscription ( 
      magazine_subscription_id, 
      subscription_name, 
      magazine_id, 
      status ) 
  VALUES ( 
      (SELECT magazine_subscription_id, 
              subscription_name, 
              magazine_id 
       FROM tbl_magazine_subscription 
       ORDER BY magazine_subscription_id ASC), '1')
Möglicherweise wird die Fehlermeldung angezeigt:

#1136 - Column count doesn't match value count at row 1
Dies liegt daran, dass die Anzahl der in der INSERT-Anweisung angegebenen Spalten nicht mit der Anzahl der in der Unterabfrage bereitgestellten Werte übereinstimmt.

Lösung

Um dieses Problem zu beheben, verwenden Sie die INSERT...SELECT-Syntax wie folgt:

INSERT INTO mt_magazine_subscription ( 
      magazine_subscription_id, 
      subscription_name, 
      magazine_id, 
      status ) 
SELECT magazine_subscription_id, 
       subscription_name, 
       magazine_id, 
       '1'
FROM tbl_magazine_subscription
ORDER BY magazine_subscription_id ASC 
In dieser korrigierten Abfrage wird die '1 Der Wert für die Statusspalte wird direkt im SELECT-Teil angegeben. Mithilfe der INSERT...SELECT-Syntax geben Sie die einzufügenden Spalten an und wählen die einzufügenden Werte aus einer anderen Tabelle oder Unterabfrage aus. Dabei stellen Sie sicher, dass die Anzahl der Spalten und Werte übereinstimmt.

Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „Spaltenanzahl stimmt nicht mit Wertanzahl überein' beim Einfügen von Daten in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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