Heim >Datenbank >MySQL-Tutorial >Wie füge ich Daten mithilfe von SELECT- und Standardwerten korrekt in eine MySQL-Tabelle ein?
Mit Auswahl- und Standardwerten in eine MySQL-Tabelle einfügen: Fehler beheben
In MySQL das Einfügen von Daten in eine Tabelle mithilfe von Auswahlanweisungen und Standardwerten kann manchmal zu Fehlern führen. Gehen wir auf die spezifischen Fehlermeldungen ein, die in den bereitgestellten Abfragen aufgetreten sind.
Fehler 1: MySQL-Fehler
Die Abfrage INSERT INTO def (catid, title, page, Publish) ( SELECT catid, title from abc),'page','yes') führt zu einem MySQL-Fehler, da versucht wird, mehrere Datensätze einzufügen, ohne die Spaltennamen dafür anzugeben Standardwerte.
Fehler 2: Spaltenanzahl stimmt nicht überein
Die Abfrage INSERT INTO def (catid, title, page, Publish) VALUES((SELECT catid, title from abc ),'page','yes')) verursacht einen Fehler bei der Spaltenanzahl, da mehr Werte in der SELECT-Unterabfrage als in VALUES angegeben werden Klausel.
Lösung
Um diese Fehler zu beheben, ist die korrekte Methode zum Einfügen in eine Tabelle mit SELECT-Anweisungen und Standardwerten wie folgt:
INSERT INTO def (catid, title, page, publish) SELECT catid, title, 'page', 'yes' FROM `abc`
Diese Abfrage gibt explizit die Standardwerte für Seite („Seite“) und Veröffentlichung („Ja“) in der SELECT-Anweisung an. Durch den Abgleich der Spaltennamen in der INSERT INTO-Klausel mit den in der SELECT-Unterabfrage ausgewählten Spalten wird auch der Spaltenanzahlfehler vermieden.
Diese aktualisierte Abfrage sollte die Daten aus der abc-Tabelle erfolgreich in die def-Tabelle einfügen. zusammen mit den Standardwerten für Seite und Veröffentlichung.
Das obige ist der detaillierte Inhalt vonWie füge ich Daten mithilfe von SELECT- und Standardwerten korrekt in eine MySQL-Tabelle ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!