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
charNOT 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
************