130 votes

Postgres: "ERREUR: le plan mis en cache ne doit pas changer le type de résultat"

Cette exception est lancée par le serveur PostgreSQL 8.3.7 vers mon application. Est-ce que quelqu'un sait ce que signifie cette erreur et ce que je peux faire à ce sujet ?

ERREUR: le plan mis en cache ne doit pas changer le type de résultat
DECLARATION: select code,is_deprecated from country where code=$1

0 votes

Pouvez-vous s'il vous plaît partager la version exacte de PostgreSQL? 8.3.X?

-1voto

user2923486 Points 1

Si vous avez une application JPA avec Hibernate ou un autre fournisseur et que vous modifiez le type d'une colonne dans le domaine, par exemple, si vous augmentez la longueur d'une seule attribut, vous devez modifier manuellement la colonne dans la base de données pour refléter ce changement:

alter table nom_table alter column nom_colonne type character varying(2000);

-1voto

Reinaldo Gil Points 365

J'ai obtenu cette erreur en développant un plpgsql (en supprimant et en créant une fonction) dans ma base de données locale sans autres connexions.

Je pense que la cause est parce que j'ai utilisé un paramètre DE SORTIE de fonction avec le même nom d'une colonne dans une table à l'intérieur d'une BOUCLE.

J'ai besoin de me déconnecter et de me reconnecter pour résoudre le problème.

PostgreSQL 16.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X