Heim > Backend-Entwicklung > PHP-Tutorial > Warum gibt meine PostgreSQL-Abfrage trotz der Verwendung von Anführungszeichen „Spaltenname existiert nicht' zurück?

Warum gibt meine PostgreSQL-Abfrage trotz der Verwendung von Anführungszeichen „Spaltenname existiert nicht' zurück?

Susan Sarandon
Freigeben: 2024-12-16 02:31:10
Original
767 Leute haben es durchsucht

Why Does My PostgreSQL Query Return

Postgresql-Anweisungsfehler: Spaltenname existiert nicht

In PostgreSQL-Datenbanken kann die Fehlermeldung „Spaltenname existiert nicht“ auftreten beim Versuch, eine Abfrage mit einem bestimmten Spaltennamen in Anführungszeichen auszuführen.

Problem Beschreibung:

Der Benutzer hat ein Problem beim Abfragen einer einfachen PostgreSQL-Datenbank mit einer Tabelle, die eine Spalte mit dem Namen „lName“ (Großbuchstabe N) enthält. Trotz der erforderlichen Angabe des Spaltennamens wird ein Fehler zurückgegeben, der darauf hinweist, dass die Spalte „Smith“ nicht vorhanden ist.

Lösung:

Das Problem liegt in der falschen Angabe Format des in der LIKE-Klausel verwendeten Zeichenfolgenliterals. In PostgreSQL müssen Zeichenfolgenliterale in einfache Anführungszeichen (') und nicht in doppelte Anführungszeichen (") eingeschlossen werden.

Richtige Abfrage:

SELECT *
FROM employee
WHERE "lName" LIKE 'Smith'
Nach dem Login kopieren

Erklärung :

Doppelte Anführungszeichen (") innerhalb der LIKE-Klausel bezeichnen einen Bezeichner in Anführungszeichen, kein Zeichenfolgenliteral. Daher interpretierte die Abfrage fälschlicherweise „Smith“ als Spaltennamen und nicht als Zeichenfolgenvergleichswert.

Zusätzliche Hinweise:

  1. Erwägen Sie die Aufnahme eines Platzhalters in die LIKE-Klausel, da sie teilweise Zeichenfolgenübereinstimmungen zulässt.
  2. Stellen Sie sicher, dass der Spaltenname in der angegebenen Tabelle vorhanden ist, um Ähnlichkeiten zu vermeiden Fehler.

Das obige ist der detaillierte Inhalt vonWarum gibt meine PostgreSQL-Abfrage trotz der Verwendung von Anführungszeichen „Spaltenname existiert nicht' zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage