您的位置:首页 > 数据库

Sql Server 2008R2 遇到了BCP导入各种中文乱码的问题

2016-05-05 17:22 405 查看
今天玩BCP导入数据的时候,有文件格式,有中文字符串问题……以下是历程,和大家分享一下,希望不要走我的弯路
主要那个表是一个翻译表,一个文件里面内涵几十种语言,所以很容易发现问题。

0、使用最常用的语句导数据

  bcp DB.TBOwner.TB in File -S -U -P -r -t -c  来到,死活岛导不进去

1、打开文件,首先发现文件编码使用的是UTF-16 ……难怪死活不能导进去。然后把文件转换成UTF-8 ,不报错了!而且可以导进去了!!

2、开心的时间不到30秒,一查数据……全乱码了,又回到原点了……

3、冷静,查文档,发现其实BCP是不支持UTF-8 的代码页的,然后回想一下,UTF-8 是变长格式,用UE查看数据文档。中文和其它语言是使用2个字符编码,英文是用1个字符编码,那就想到首先将文档转成宽字符,这里我转成了 unicode字符来处理。

4、bcp DB.TBOwner.TB in File -S -U -P -r -t -w 使用原来的语句,讲-c 改成 -w ~导入成功,查看数据无误~解决~

 

这就是知识不扎实走的弯路……

BCP使用工具注释:http://msdn.microsoft.com/zh-cn/library/ms162802.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: