Heim >Datenbank >MySQL-Tutorial >Wie behebt man den Fehler „Spaltenanzahl stimmt nicht mit Wertanzahl überein' beim Einfügen von Daten in MySQL?
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 1Dies 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 ASCIn 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!