ERROR Inserting into partition

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



All;


I have created a table that looks like this:

CREATE TABLE myschema.cust_part (
           cust_int_id     bigint,
          cust_ext_id    bigint,
          cust_tax_id   varchar(20),
          cust_dob        date,
          cust_dob_str   varchar(20),
         cust_last_name  varchar(100),
        cust_first_name   varchar(100),
         cust_middle_name  varchar(100),
        cust_addr1                text,
       cust_city                     text,
       cust_state                  text,
       cust_zip                     varchar(5)
) PARTITION BY LIST (cust_last_name);

and a partition that looks like this:

CREATE TABLE part_schema.cust_info_5
PARTITION OF myschema.cust_part
FOR VALUES IN ('NELL');



if I insert ONLY the partition  key column  via a select from another table it fails:

INSERT INTO part_schema.cust_info_5
( cust_last_name)
SELECT l_name from public.global_addr WHERE l_name = 'NELL';
ERROR:  new row for relation "cust_info_5" violates partition constraint
DETAIL:  Failing row containd (null, null, null, null, null, 'NELL', null, null, null, null, null,null).

However if I insert the values directly it works:

INSERT INTO part_schema.cust_info_5 VALUES (null, null, null, null, null, 'NELL', null, null, null, null, null,null)
;
INSERT 0 1



I'm stumped, this happens with other last name values as well such as 'N', and 'SMITH' thoughts?

I get the same behavior if I insert based on a select of all the partition table columns

Thanks in advance







[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux