笨方法处理Oracle导入中文乱码的问题

上一篇 / 下一篇  2017-07-19 13:49:26 / 个人分类:其他

1、---control文件中新增一句,设置字符集----
LOAD DATA
CHARACTERSET ZHS16GBK ---此句是为了避免乱码而加入的
INFILE 'c:\Ttest.txt'
append
INTO TABLE Ttest
fields terminated by ','
trailing nullcols
(ID,CO_NAME,ADDRESS,AREA_CODE,TYPE_CODE)

2、以上步骤后继续导入,还是出现乱码,于是把需要导入的txt文件(原来默认是UTF-8格式的)另存为ANSI格式【此时在进行导入,结果乱码解决】

3、此外有些表导入的过程中还会出现数据过长的错误,明明所造的数据是允许的(小于数据库字段的设置)
于是修改control文件如下:
append
INTO Ttest
fields terminated by ';'
trailing nullcols
(ID CHAR(19),
AUTHOR CHAR(255),
CONTENT CHAR(4000),
PUB_DATE CHAR(255),
TITLE CHAR(500),
TYPE_CODE CHAR(255))

注意:数据库中ID是Number类型,TITLE是VARCHAR2(255 CHAR);实验后,确实可以成功导入数据,所以Control文件中估计可以统一采用CHAR(XXX)这种写法,确保长度是数据库字段允许范围内即可


TAG:

 

评分:0

我来说两句

Open Toolbar