Titel: Unbekannte Spalte „Spaltenname“ in „on-Klausel“ – So beheben Sie den MySQL-Fehler: Unbekannte Spalte in der on-Klausel, spezifische Codebeispiele sind erforderlich
Artikeltext:
MySQL ist eine häufig verwendete relationale Open-Source-Datenbank Managementsysteme werden häufig in verschiedenen Arten der Anwendungsentwicklung eingesetzt. Bei der Verwendung von MySQL treten jedoch manchmal verschiedene Fehler und Probleme auf. Einer der häufigsten Fehler ist „Unbekannte Spalte ‚Spaltenname‘ in ‚on-Klausel‘“ (unbekannte Spalte in der on-Klausel).
Wenn wir eine JOIN-Anweisung (Join Query) in MySQL ausführen und in der on-Klausel auf einen unbekannten Spaltennamen verwiesen wird, meldet MySQL diesen Fehler. Dieser Fehler wird normalerweise durch eine falsche Schreibweise eines Spaltennamens, einen Spaltennamen, der nicht in der entsprechenden Tabelle definiert ist, oder die falsche Verwendung eines Alias verursacht.
Also, wie kann man dieses Problem lösen? Hier sind einige gängige Lösungen:
Nehmen wir zum Beispiel an, wir haben eine Tabelle namens „Benutzer“, die Spalten mit den Namen „ID“ und „Name“ enthält. Dieser Fehler wird gemeldet, wenn wir den Spaltennamen „id“ in der Join-Abfrage als „Id“ buchstabieren. Die richtige Schreibweise besteht darin, den Spaltennamen „id“ in „Id“ zu ändern.
SELECT *
FROM Benutzer
JOIN Aufträge ON Benutzer.Id = Aufträge.user_id;
Die richtige Schreibweise ist:
SELECT *
FROM Benutzer
JOIN Aufträge ON Benutzer.id = Aufträge.user_id;
Nehmen wir zum Beispiel an, wir haben eine Tabelle namens „Bestellungen“, die eine Spalte namens „Benutzer-ID“ enthält. Wenn wir jedoch in der Verbindungsabfrage den Spaltennamen „user_id“ als „customer_id“ schreiben, wird dieser Fehler gemeldet. Zu diesem Zeitpunkt müssen wir den Spaltennamen in die korrekte Schreibweise ändern.
SELECT *
VON Benutzern
JOIN Bestellungen ON Benutzer.id = Aufträge.customer_id;
Die richtige Schreibweise ist:
SELECT *
FROM Benutzer
JOIN Aufträge ON Benutzer.id = Aufträge.user_id;
Angenommen, wir haben zum Beispiel Tabellenaliase verwendet, um den Code zu vereinfachen:
SELECT *
FROM user AS u
JOINorders AS o ON u.id =orders.user_id;
Verweisen Sie an dieser Stelle auf die Spalte in der on-Klausel Bei der Benennung sollten wir das korrekte Alias-Präfix „u“ anstelle des Tabellennamens „users“ der Originaltabelle verwenden.
Durch die oben genannten Methoden können wir das Problem des MySQL-Fehlers „Unbekannte Spalte ‚Spaltenname‘ in ‚on-Klausel‘“ (unbekannte Spalte in der on-Klausel) lösen. Um diesen Fehler und die Lösung besser zu verstehen, wird unten gleichzeitig ein spezifisches Codebeispiel angegeben:
Beispielcode:
CREATE TABLE-Benutzer (
id INT PRIMARY KEY,
Name VARCHAR(50)
);
TABELLE Bestellungen erstellen (
id INT PRIMARY KEY,
user_id INT,
order_date DATE
);
INSERT INTO user VALUES (1, 'Alice');
INSERT INTO user VALUES (2, 'Bob');
IN DEN BESTELLUNGSWERTEN EINFÜGEN (1, 1, '01.01.2022'); id =orders.user_id;
Zusammenfassend lässt sich sagen, dass Sie zur Behebung des MySQL-Fehlers „Unbekannte Spalte ‚Spaltenname‘ in ‚on-Klausel‘“ auf die Schreibweise des Spaltennamens achten müssen, ob der Spaltenname in der Tabelle definiert wurde und … Referenzmethode bei der Verwendung von Aliasnamen. Durch sorgfältige Überprüfung und korrekte Änderung des Codes können wir diesen Fehler vermeiden und die Join-Abfrageanweisung erfolgreich ausführen.
Das obige ist der detaillierte Inhalt vonUnbekannte Spalte „Spaltenname“ in der „on-Klausel“ – So beheben Sie den MySQL-Fehler: Unbekannte Spalte in der on-Klausel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!