Slet ikke en fejl.
Casting af strengen literal 'ab ' til character , dette er hvad du får:
a
Per dokumentation:
character uden længdeangivelse svarer til character(1) .
'a'::character(1) vil derefter blive tvunget til varchar (character varying ) for at teste for lighed med 'a'::varchar eller 'ab'::varchar og give TRUE eller FALSE hhv.
Grundlæggende er der næppe nogen god grund til at bruge character overhovedet . Det er en arvetype, der har overlevet sin brugbarhed. Brug bare text eller varchar .
- Er der nogen ulemper ved at bruge datatypen "tekst" til at gemme strenge?