hmahmood89@googlemail.com writes:
> create temporary table product_codes as select *
> from (
> values
> ('abcdefg'::character varying(20)),
> ('012345678901234567ABCDEFGHIJKLMN')
> ) csv_data (product_code);
> select *
> from product_codes;
> I would expect that the type check got applied across all values or that the
> value got truncated.
> The result column states "character varying(20)". Inserts/Updates/Casts all
> truncate as expected.
Hmm. I'm not sure whether that VALUES construct should be expected to
produce varchar(20) or just unrestricted varchar, but I agree that if
it claims to produce varchar(20) then the results should all meet that
limit. Will look into it, thanks for the report!
regards, tom lane