BULK INSERT无法正常工作

时间:2013-09-25 02:52:38

标签: sql sql-server sql-server-2008 tsql bulkinsert

我在SQL Server Management Studio 2008 R2中使用批量插入,从文本UTF-8文件中将10个单词用于单列。

然而,单词没有正确显示,我在一些单词前面得到了额外的空间。

注意:到目前为止,没有一个答案解决了我的问题。 :(

SCREENSHOT OF THE PROBLEM

3 个答案:

答案 0 :(得分:0)

如果未使用正确的排序规则(语言设置),则可能会发生此问题。您需要使用适当的排序规则才能以正确的格式显示数据。 有关详细信息,请参阅链接http://technet.microsoft.com/en-us/library/ms187582(v=sql.105).aspx

答案 1 :(得分:0)

请看这篇文章How to write UTF-8 characters using bulk insert in SQL Server?

  

引用:你做不到。您应该首先使用N类型数据字段进行转换   您的文件为UTF-16然后导入它。数据库不支持   UTF-8。

原始答案

查看你的文本文件的编码。应该是utf8。如果不是这可能会导致问题。

用记事本打开,文件 - >另存为并选择编码

此后尝试导入为批量

其次,确保列数据类型为nvarchar而不是varchar。另请参阅here

答案 2 :(得分:0)

您也可以尝试使用其他行终止符:

bulk insert table_name
from 'filename.txt' WITH (ROWTERMINATOR='\n')