我一直在参考以下页面:
http://msdn.microsoft.com/en-us/library/ms178129.aspx http://msdn.microsoft.com/en-us/library/ms178129.aspx
我只是想从包含 Unicode 字符的文件中批量导入一些数据。我尝试过用 UC-2、UTF-8 等对实际数据文件进行编码,但没有任何效果。我还修改了格式文件以使用SQLNCHAR
,但它仍然不起作用并给出错误:
第 1 行第 1 列的批量加载数据转换错误(截断)
我认为这与上面链接中的声明有关:
对于与 Unicode 字符数据文件一起使用的格式文件,所有
输入字段必须是 Unicode 文本字符串(即,固定大小
或以字符结尾的 Unicode 字符串)。
这到底是什么意思?我认为这意味着每个字符串都需要是固定的2个字节,UCS-2中的文件编码应该处理???
这篇博文非常有帮助,解决了我的问题:
http://blogs.msdn.com/b/joaol/archive/2008/11/27/bulk-insert-using-unicode-data-files.aspx http://blogs.msdn.com/b/joaol/archive/2008/11/27/bulk-insert-using-unicode-data-files.aspx
还有一点需要注意 - Java 类正在生成数据文件。为了使上述解决方案发挥作用,数据文件需要编码为UTF-16LE,可以在 OutputStreamWriter 的构造函数中设置(例如)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)