PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

L'erreur Castle Activerecord est "la relation n'existe pas" sur Postgresql ?

Les identifiants PostgreSQL sont sensibles à la casse; "JobTitle" n'est pas identique à "jobtitle" . Cependant, les identifiants sans guillemets sont pris en casse en minuscules. Le pliage de casse est requis par la norme SQL.

Cela signifie que si vous créez une table avec :

CREATE TABLE "JobTitle" (...)

vous devez toujours vous y référer comme :

SELECT * FROM "JobTitle";

si vous omettez les guillemets :

SELECT * FROM JobTitle;

PostgreSQL plis cas JobTitle à jobtitle et vous obtiendrez une erreur sur la table jobtitle non existant.

Citez systématiquement ou utilisez tous les identificateurs en minuscules.

Plus d'informations dans la section structure lexicale du manuel de l'utilisateur .