Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 大容量插入无法正常工作_Sql_Sql Server_Sql Server 2008_Tsql_Bulkinsert - Fatal编程技术网

Sql 大容量插入无法正常工作

Sql 大容量插入无法正常工作,sql,sql-server,sql-server-2008,tsql,bulkinsert,Sql,Sql Server,Sql Server 2008,Tsql,Bulkinsert,我在SQLServerManagementStudio 2008 R2中使用了大容量插入,将文本UTF-8文件中的10个单词插入到一列中 但是,这些单词显示不正确,我在一些单词前获得了额外的空间 注意:到目前为止,所有答案都没有解决我的问题:( 如果您没有使用正确的排序规则(语言设置),可能会出现此问题。您需要使用适当的排序规则才能以正确的格式显示数据。 有关更多详细信息,请参阅链接。查看此帖子 Quote:您不能。您应该首先使用N类型的数据字段convert 将文件导入UTF-16,然后导入。

我在SQLServerManagementStudio 2008 R2中使用了大容量插入,将文本UTF-8文件中的10个单词插入到一列中

但是,这些单词显示不正确,我在一些单词前获得了额外的空间

注意:到目前为止,所有答案都没有解决我的问题:(


如果您没有使用正确的排序规则(语言设置),可能会出现此问题。您需要使用适当的排序规则才能以正确的格式显示数据。 有关更多详细信息,请参阅链接。

查看此帖子

Quote:您不能。您应该首先使用N类型的数据字段convert 将文件导入UTF-16,然后导入。数据库不支持 UTF-8

原始答案

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

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

在此之后,尝试作为批量导入


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

您也可以尝试使用不同的行终止符:

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

最坏的情况是,如果您的数据完整性看起来很好,而不是额外的空格,只需修剪结果。您的文本文件的编码是什么?@Szymon UTF-8,检查问题中的链接,您就会找到所有信息。您解决了问题了吗检查文件的编码。列为nvarchar(50),并且文件是UTF-8,我仍然得到相同的错误。您也可以尝试不同的
数据文件类型
代码页
选项,如此处所述:a,并将Column数据类型设置为nvarchar而不是varchar@Iordkain