From: | Chairudin Sentosa Harjo <chai(at)prima(dot)net(dot)id> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | Constraint Problem |
Date: | 1999-09-30 08:05:26 |
Message-ID: | 37F319C6.FA5B5536@prima.net.id |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Dear Friends,
I have a very wierd problem. It should be obvious, but I can't
understand why.
I am using Postgresql 6.5.2, SuSe 6.2, Pentium III, Kernel Linux 2.2.10.
Please notice the error, it keeps saying ck_ngetest_disc_pin,
ck_ngetest_disc_country
is the cause of the problem.
I have inserted the correct value, but why keep giving error???
The wierdest part is, when I insert a value to field "disc_all", the
error mentioned
"ck_ngetest_disc_pin" !!!.... If the constraint was violated, the error
message
should be "ck_ngetest_disc_all".
create table ngetest
(
custnum int8 NOT NULL,
first_name varchar(15) NOT NULL,
service_type char NOT NULL,
sex char NOT NULL,
detailed_bill char NOT NULL,
ngetest_status char NOT NULL,
disc_all char,
disc_country char,
disc_pin char,
constraint pk_ngetest PRIMARY KEY (custnum),
constraint ck_ngetest_service_type check
(service_type = 'Y' or
service_type = 'N' or
service_type = 'G' or
service_type = 'M' or
service_type = 'O' or
service_type = 'D'),
constraint ck_ngetest_status check
(ngetest_status = 'A' or
ngetest_status = 'I' or
ngetest_status = 'S' or
ngetest_status = 'T'),
constraint ck_ngetest_disc_all check
(disc_all = 'Y' or
disc_all = 'N'),
constraint ck_ngetest_disc_country check
(disc_country = 'Y' or
disc_country = 'N'),
constraint ck_ngetest_disc_pin check
(disc_pin = 'Y' or
disc_pin = 'N')
);
insert into ngetest
(custnum, first_name, service_type, sex, detailed_bill, ngetest_status,
disc_all)
values
(1,'Bob','Y','M','Y','A','Y');
ERROR: ExecAppend: rejected due to CHECK constraint ck_ngetest_disc_pin
insert into ngetest
(custnum, first_name, service_type, sex, detailed_bill, ngetest_status,
disc_country)
values
(2,'Mike','Y','M','Y','A','Y');
ERROR: ExecAppend: rejected due to CHECK constraint ck_ngetest_disc_pin
insert into ngetest
(custnum, first_name, service_type, sex, detailed_bill, ngetest_status,
disc_pin)
values
(3,'John','Y','M','Y','A','Y');
ERROR: ExecAppend: rejected due to CHECK constraint
ck_ngetest_disc_country
Regards,
Chairudin Sentosa
************
From | Date | Subject | |
---|---|---|---|
Next Message | Safa Pilavcı | 1999-09-30 08:15:01 | CONTAINS keyword |
Previous Message | Tom Lane | 1999-09-29 23:36:58 | Re: [SQL] Limit rows |