BUG #2980: check constraint fails on update - Mailing list pgsql-bugs

From Walter Cruz
Subject BUG #2980: check constraint fails on update
Date
Msg-id 200702071622.l17GMvZP079941@wwwmaster.postgresql.org
Whole thread Raw
Responses Re: BUG #2980: check constraint fails on update  (Heikki Linnakangas <heikki@enterprisedb.com>)
List pgsql-bugs
The following bug has been logged online:

Bug reference:      2980
Logged by:          Walter Cruz
Email address:      walter.php@gmail.com
PostgreSQL version: 8.1.7
Operating system:   Linux
Description:        check constraint fails on update
Details:

Hi All. A simple table to test:

CREATE TABLE simples
(
  coluna varchar(10)
)
WITHOUT OIDS;

ALTER TABLE simples
  ADD CONSTRAINT simples_coluna_check CHECK (coluna::text = 'girafa'::text
OR coluna::text = 'bode'::text);

INSERT INTO simples (coluna) VALUES ('girafa');
(ok)

INSERT INTO simples (coluna) VALUES ('bode');
(ok)

INSERT INTO simples (coluna) VALUES ('macaco'); (violates constraints, ok).


UPDATE simples set coluna = 'girafa';

FAILS!

ERROR:  attribute 1 has wrong type
DETAIL:  Table has type character varying, but query expects character
varying.

"PostgreSQL 8.1.7 on i486-pc-linux-gnu, compiled by GCC cc (GCC) 4.1.2
20061115 (prerelease) (Debian 4.1.1-21)"

Works with 8.1.3 windows, 8.1.4 ubuntu, 8.2 windows.

pgsql-bugs by date:

Previous
From: "Michal Schwarz"
Date:
Subject: BUG #2974: broken CHECK constraint with varchar
Next
From: "Asif"
Date:
Subject: BUG #2981: server crash