免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5887 | 回复: 3
打印 上一主题 下一主题

[已解决]DB2数据导入问题,中文导入全是乱码。急解决! [复制链接]

论坛徽章:
33
ChinaUnix元老
日期:2018-07-04 15:10:362015年亚洲杯之阿联酋
日期:2015-02-06 17:15:532015亚冠之武里南联
日期:2015-06-06 15:40:252015亚冠之北京国安
日期:2015-06-17 15:42:412022北京冬奥会纪念版徽章
日期:2015-08-10 16:30:322015亚冠之阿尔纳斯尔
日期:2015-09-20 09:42:1215-16赛季CBA联赛之北京
日期:2016-01-15 10:03:5915-16赛季CBA联赛之青岛
日期:2016-04-26 16:44:4915-16赛季CBA联赛之广夏
日期:2018-07-04 15:33:21C
日期:2016-10-25 16:12:142017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之同曦
日期:2017-02-22 22:41:10
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-20 11:27 |只看该作者 |倒序浏览
原数据库平台:linux +SYBASE 12.5

现数据库平台:as400/db2

采用工具软件:Embarcadero DBA8.12

现在只做数据迁移,创建表、过程、触发器、索引有DB2下的脚本,全部创建完毕。

采用Embarcadero DBA8.12做数据导入时,很怪的问题,表里如果没有中文字符的完全可以导入,但是有中文的,导入乱码,而且数据导入不全。查看Embarcadero DBA8.12的导入报告提示如下:

Generating Create:
Failed Execute: INSERT INTO "dbo"."telrecord" ( "id_type", "id_name", "employee_num", "id_num", "bank_num", "tel_num", "charge_type", "charge_money", "dial_time", "time_len", "employee_name", "employee_sex", "department_num", "department_name" ) VALUES ( 2, '?°?¤±à??', '10018000001', ' ', '00001001800001 ', ' ', 0, 0.00, '2004-12-24 09:34:00.000000', 78, '??±??? ', ' ', '10018', '??×?·??????????í???? ' )
[IBM][CLI Driver][DB2/NT] SQL0433N 值 " ° ¤±à " 太长。 SQLSTATE=22001
(22001.-433)

难道是表的列字符长度有问题,乱码又是怎么回事,通过db2 get db cfg 结果如下:

数据库  的数据库配置



数据库配置发行版级别                    = 0x0d00

数据库发行版级别                                  = 0x0d00



数据库领域                                      = CN

数据库代码页                                      = 1386

数据库代码集                                       = GBK

数据库国家/地区代码                            = 86


  那位高手伸手一下!

[ 本帖最后由 wfcjz 于 2009-12-26 21:32 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2009-12-20 16:02 |只看该作者

回复 #1 wfcjz 的帖子

Linux+Sybase出来的文本是Unicode编码的吗?
Embarcadero的字符集设置是Unicode的吗?
保证所有相关环境(如操作系统、客户端、工具软件)字符集设置为GB2312或GBK或GB18030。

论坛徽章:
33
ChinaUnix元老
日期:2018-07-04 15:10:362015年亚洲杯之阿联酋
日期:2015-02-06 17:15:532015亚冠之武里南联
日期:2015-06-06 15:40:252015亚冠之北京国安
日期:2015-06-17 15:42:412022北京冬奥会纪念版徽章
日期:2015-08-10 16:30:322015亚冠之阿尔纳斯尔
日期:2015-09-20 09:42:1215-16赛季CBA联赛之北京
日期:2016-01-15 10:03:5915-16赛季CBA联赛之青岛
日期:2016-04-26 16:44:4915-16赛季CBA联赛之广夏
日期:2018-07-04 15:33:21C
日期:2016-10-25 16:12:142017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之同曦
日期:2017-02-22 22:41:10
3 [报告]
发表于 2009-12-21 12:54 |只看该作者

回复 #2 ywzj 的帖子

采用的不是TEXT文本导入,而是用Embarcadero直接做表对表的data copy,Embarcadero这个字符集在那里设置?

论坛徽章:
33
ChinaUnix元老
日期:2018-07-04 15:10:362015年亚洲杯之阿联酋
日期:2015-02-06 17:15:532015亚冠之武里南联
日期:2015-06-06 15:40:252015亚冠之北京国安
日期:2015-06-17 15:42:412022北京冬奥会纪念版徽章
日期:2015-08-10 16:30:322015亚冠之阿尔纳斯尔
日期:2015-09-20 09:42:1215-16赛季CBA联赛之北京
日期:2016-01-15 10:03:5915-16赛季CBA联赛之青岛
日期:2016-04-26 16:44:4915-16赛季CBA联赛之广夏
日期:2018-07-04 15:33:21C
日期:2016-10-25 16:12:142017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之同曦
日期:2017-02-22 22:41:10
4 [报告]
发表于 2009-12-26 21:31 |只看该作者
解决了,个人用Embarcadero DBArtisan 8.6.1先做select * from 查出表里,在结果里生成inster into,然后丢在db2 的sql命令行运行器里,没有乱码了!郁闷了好几天!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP