Maison >développement back-end >tutoriel php >Pourquoi ma requête PostgreSQL échoue-t-elle avec « Le nom de la colonne n'existe pas » ?

Pourquoi ma requête PostgreSQL échoue-t-elle avec « Le nom de la colonne n'existe pas » ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-02 09:12:11442parcourir

Why Does My PostgreSQL Query Fail with

Erreur Postgresql : le nom de la colonne n'existe pas

Dans cette requête :

SELECT * 
FROM employee 
WHERE "lName" LIKE "Smith"

Le message d'erreur "colonne "Smith" n'existe pas" indique que le nom de colonne utilisé dans la clause LIKE est incorrect. L'opérateur LIKE nécessite qu'un caractère générique soit spécifié dans le modèle de recherche. Dans ce cas, le caractère générique est manquant, ce qui entraîne une interprétation littérale du nom de la colonne.

Pour résoudre le problème, utilisez des guillemets simples autour du modèle de recherche pour spécifier une chaîne littérale et inclure un caractère générique. Par exemple :

SELECT * 
FROM employee 
WHERE "lName" LIKE 'Smith%'

Notez que les guillemets simples indiquent une chaîne littérale, tandis que les guillemets doubles indiquent un identifiant (dans ce cas, le nom de la colonne). L'utilisation de guillemets simples pour le modèle de recherche vous permet également d'utiliser des caractères majuscules dans le nom de la colonne sans avoir besoin de guillemets supplémentaires.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn