我有一个 PSQL 数据库,它必须从 MariaDB 数据库读取数据。 MariaDB 表采用 utf8_general_ci 编码,PSQL 数据库采用 UTF8 编码。 当我从任一侧写汉字时,它们在另一侧显示的编码不正确。 有谁知道我如何从 PSQL 端解决这个问题?谢谢
我尝试在 PSQL 中创建外部表时设置排序规则,但没有成功。
一些中文(以及一些表情符号)需要
CHARACTER SET utf8mb4
,而不仅仅是 utf8
(又名 utf8mb3
)。
utf8mb4 在 MySQL 5.5 和 MariaDB 5.5 及所有后续版本中可用。 (5.5 有一些
INDEX
定义问题,但有解决方法。)
对每个表执行此操作:
ALTER TABLE tbl CONVERT TO CHARACTER SET utf8mb4;
但要小心;有些事情可能会出错,您可能需要采取不同的转换方法。
同时,表中已经存储的4字节汉字将被丢弃,并且无法恢复。