作者tooilxui (风流剑客苗条邋遢胖)
看板Database
标题[讨论] informix big5 转 utf8 ?
时间Thu Apr 12 22:33:12 2018
最近尝试要将informix db从原本的zh_tw.big5 转为zh_tw.utf8,
就目前了解存有中文的资料表栏位几乎要扩大为三倍。
目前想到比较可行的方法是先修改table schema,建一个utf8的资料库,
再将big5资料dbunload成*.unl档案,并将*.unl档案用iconv转换为utf8,
最後使用dbload将资料导入utf8资料库。
但经过测试发现,许多iconv转成utf8的*.unl,
还是会有几笔资料无法load到资料库的现象...
遮些无法load的资料,分散在各资料表,
多的话一表几千笔,实在不知道怎麽处理这些资料。
想请教一下是否有前辈有做过类似的case,
是否可以分享一下怎麽处理资料的问题?
谢谢!
------------------------------------------------------------
我来自问自答了,以下个人经验,若有错误请前辈帮忙纠正。
原来big5有分几个版本,EX: BIG5-2003、BIG5-IBM...等等,
而informix可以存的资料有包含BIG5-2003的字集。
自己测试iconv 没办法转出BIG5-2003的字集到UTF-8,尝试过ConvertZ也是一样的,
甚至我用C#、python自干程式去decode也有解不出来的问题,
但最後最後靠golang decode就解套了。
网路上有蛮多golang decode的小程式,有跟我相同需求的可以google看看。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.253.161.89
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Database/M.1523543594.A.3AF.html
1F:推 LPH66: 有一些无法成功的例子吗? 04/13 01:45
※ 编辑: tooilxui (114.26.178.1), 05/09/2018 15:21:22