PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 03/08/2017 10:44:18

duple
Membre

Violates check constraint

Bonjour,

J'ai créé une table telle que:
CREATE TABLE suivi_inject_tl.type_error_inject_wr
(
  id_type_error_inject_wr integer NOT NULL DEFAULT nextval('suivi_inject_tl.type_error_inject_wr_id_type_error_inject_wr_seq'::regclass),
  type_error_inject_wr character varying(150),
  CONSTRAINT pk_type_error_inject_wr PRIMARY KEY (id_type_error_inject_wr),
  CONSTRAINT ckc_type_error_inject_type_err CHECK (type_error_inject_wr IS NULL OR type_error_inject_wr::text <= '150'::text)
)

Le souci est que quand je fais un INSERT INTO suivi_inject_tl.type_error_inject_wr(type_error_inject_wr) values ('Truc que je veux insérer');
>>> Cela me renvoie à l'erreur : ERROR:  new row for relation "type_error_inject_wr" violates check constraint "ckc_type_error_inject_type_err"

Je ne comprends pas pourquoi cette erreur apparait avec  CONSTRAINT ckc_type_error_inject_type_err CHECK (type_error_inject_wr IS NULL OR type_error_inject_wr::text <= '150'::text);

Avez vous idée du pourquoi et pouvez vous expliquer ?

Merci

Hors ligne

#2 03/08/2017 10:50:49

duple
Membre

Re : Violates check constraint

Ok, le problème est règlé avec :

ADD CONSTRAINT ckc_type_error_inject_type_err CHECK (type_error_inject_wr IS NULL OR length(type_error_inject_wr) <= 150);

Hors ligne

Pied de page des forums