我在postgresql中有一个VARCHAR(1)
字段。
现在,我使用pg_dump
从Postgresql 9.4服务器导出数据
并使用pgsql将其导入到Postgresql 9.5服务器。
导入时出现错误:
错误:类型字符变化的值太长(1)COPY XXX“Ö”
这意味着表中的值"Ö"
占用2个字节而不是1个字节。
我必须将列增加到VARCHAR(2)
吗?
还有另一种保留VARCHAR(1)
并使用语言环境等的方法吗?
为什么这些数据曾经存储在那里?
感谢您的帮助!
答案 0 :(得分:2)
轻松修复:
目标数据库的编码错误,必须将其设置为UTF8。