PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

L'errore di Castle Activerecord è "la relazione non esiste" su Postgresql?

Gli identificatori PostgreSQL sono case sensitive; "JobTitle" non è lo stesso di "jobtitle" . Tuttavia, gli identificatori senza virgolette sono case-folded in minuscolo. La piegatura della custodia è richiesta dallo standard SQL.

Ciò significa che se crei una tabella con:

CREATE TABLE "JobTitle" (...)

devi costantemente riferirti ad esso come:

SELECT * FROM "JobTitle";

se ometti le virgolette:

SELECT * FROM JobTitle;

Case-fold di PostgreSQL JobTitle a jobtitle e riceverai un errore sulla tabella jobtitle non esiste.

O cita in modo coerente o utilizza tutti gli identificatori minuscoli.

Maggiori informazioni nella sezione sulla struttura lessicale del manuale utente .