Heim >Datenbank >MySQL-Tutorial >Warum führt meine MySQL-UPDATE-Abfrage über mehrere Tabellen hinweg zu einem Fehler „Unbekannte Spalte'?

Warum führt meine MySQL-UPDATE-Abfrage über mehrere Tabellen hinweg zu einem Fehler „Unbekannte Spalte'?

Linda Hamilton
Linda HamiltonOriginal
2025-01-14 07:20:44805Durchsuche

Why Does My MySQL UPDATE Query Across Multiple Tables Result in an

MySQL-Fehler „Unbekannte Spalte in „Feldliste““ beim Aktualisieren mehrerer Tabellen

Stößt du beim Versuch einer Aktualisierungsabfrage auf MySQL-Fehler #1054? Hier ist der Grund:

Die bereitgestellte Abfrage versucht, zwei Tabellen, MASTER_USER_PROFILE und TRAN_USER_BRANCH, mithilfe der Syntax zu aktualisieren:

UPDATE MASTER_USER_PROFILE, TRAN_USER_BRANCH
SET MASTER_USER_PROFILE.fellow='y'
WHERE MASTER_USER_PROFILE.USER_ID = TRAN_USER_BRANCH.USER_ID
AND TRAN_USER_BRANCH.BRANCH_ID = 17

Bei der Durchführung einer Aktualisierung über mehrere Tabellen hinweg ist es jedoch wichtig, Folgendes zu verwenden: die richtige Syntax. In diesem Fall tritt der Fehler „Unbekannte Spalte ‚y‘ in ‚Feldliste‘“ auf, weil MySQL den Wert „y“ aufgrund der ihn umgebenden einfachen Anführungszeichen als Spaltennamen interpretiert.

Behebung des Fehlers

Um dieses Problem zu beheben, sollte der Wert „y“ in doppelte Anführungszeichen oder mit Backticks (`) eingeschlossen werden, wie unten gezeigt Code:

UPDATE MASTER_USER_PROFILE, TRAN_USER_BRANCH
SET MASTER_USER_PROFILE.fellow="y"
WHERE MASTER_USER_PROFILE.USER_ID = TRAN_USER_BRANCH.USER_ID
AND TRAN_USER_BRANCH.BRANCH_ID = 17;

Durch Anwenden dieser Korrektur interpretiert MySQL „y“ korrekt als Wert, um die andere Spalte von MASTER_USER_PROFILE zu aktualisieren.

Zitatkonventionen

Zu vermeiden Um solche Fehler in Zukunft zu vermeiden, ist es wichtig, die richtigen Zitierkonventionen einzuhalten. Für Werte, Zeichenfolgen und Ähnliches sollten einfache oder doppelte Anführungszeichen verwendet werden, während Backticks für Spaltennamen reserviert werden sollten.

Das obige ist der detaillierte Inhalt vonWarum führt meine MySQL-UPDATE-Abfrage über mehrere Tabellen hinweg zu einem Fehler „Unbekannte Spalte'?. 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