Skip site navigation (1) Skip section navigation (2)

Constraint Problem

From: Chairudin Sentosa Harjo <chai(at)prima(dot)net(dot)id>
To: pgsql-general(at)postgresql(dot)org
Subject: Constraint Problem
Date: 1999-09-30 07:24:33
Message-ID: 37F31031.5F50A983@prima.net.id (view raw, whole thread or download thread mbox)
Thread:
Lists: pgsql-general
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

pgsql-general by date

Next:From: Moray McConnachieDate: 1999-09-30 09:05:08
Subject: Re: [GENERAL] Anyone doing a native NT port?
Previous:From: Gilles DaroldDate: 1999-09-29 23:26:26
Subject: createdb error

Privacy Policy | About PostgreSQL
Copyright © 1996-2018 The PostgreSQL Global Development Group