Postgresql-即使值太长也更新列

Postgresql-即使值太长也更新列,sql,postgresql,postgresql-9.2,Sql,Postgresql,Postgresql 9.2,我有一个疑问: begin update res_partner_address rpa set name = rp.name from res_partner rp where rpa.partner_id = rp.id and rpa.name is NULL end; 当我尝试更新该列时,出现以下错误: ERROR: value too long for type character varying(64) 所以name和rp.nam

我有一个疑问:

begin    
    update res_partner_address rpa
    set name = rp.name
    from res_partner rp
    where rpa.partner_id = rp.id
    and rpa.name is NULL
end;
当我尝试更新该列时,出现以下错误:

ERROR:  value too long for type character varying(64)

所以name和rp.name的最大长度不同。有没有办法将值截断为name的长度,这样我就可以更新它?

只需使用res\u partner表中的前64个字符:

update res_partner_address rpa
  set name = left(rp.name,64)
from res_partner rp
where rpa.partner_id = rp.id
and rpa.name is NULL

只需使用res_partner表中的前64个字符:

update res_partner_address rpa
  set name = left(rp.name,64)
from res_partner rp
where rpa.partner_id = rp.id
and rpa.name is NULL

castp.name作为字符varying64 castp.name作为字符varying64