2015-01-16 23 views
1

我有这样的查询更新列:PostgreSQL的即使值太长

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) 

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

+0

投(rp.name为字符改变(64)) – jarlh

回答

5

只使用第64个字符从res_partner表:

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 
+0

谢谢,这个作品。 – Andrius