今天玩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
新闻热点
疑难解答