Database 批量插入导入文本文件
当我导入CSV或文本文件并将其大容量插入数据库时,该过程会成功地将所有记录添加到表中Database 批量插入导入文本文件,database,csv,bulkinsert,arabic,Database,Csv,Bulkinsert,Arabic,当我导入CSV或文本文件并将其大容量插入数据库时,该过程会成功地将所有记录添加到表中 我的问题是插入的字符串是阿拉伯语,在我的数据库表中显示为符号。如何解决此问题?使用查询插入 您需要为varchar/char列选择阿拉伯语排序规则,或者使用Unicode(nchar/nvarchar) 这两列都应该工作 从文件批量插入 说明如何大容量插入unicode字符 试验台 批量插入 DATAFILETYPE='widechar'允许在批量导入数据时使用Unicode字符格式 USE Adventure
我的问题是插入的字符串是阿拉伯语,在我的数据库表中显示为符号。如何解决此问题?使用查询插入 您需要为varchar/char列选择阿拉伯语排序规则,或者使用Unicode(nchar/nvarchar) 这两列都应该工作 从文件批量插入 说明如何大容量插入unicode字符 试验台 批量插入
DATAFILETYPE='widechar'
允许在批量导入数据时使用Unicode字符格式
USE AdventureWorks2012;
GO
BULK INSERT myTestUniCharData
FROM 'C:\myTestUniCharData-w.Dat'
WITH (
DATAFILETYPE='widechar',
FIELDTERMINATOR=','
);
GO
SELECT Col1,Col2,Col3 FROM myTestUniCharData;
GO
您使用的是哪个数据库?我使用Sql DB,请注意,当我插入cmd nonquery时,它会正确地存储在DB中,但当我使用bulk insert时,会出现此问题。我添加了一些更多信息,如果仍不起作用,请准确指定当前正在执行的操作。
//从txt文件中读取数据并将其插入DB//textBox1.Text中的选项卡的查询。Text是包含.txt文件的路径和名称//comboBox1是包含所有选项卡im DB cmd=new SqlCommand(@“大容量插入”+comboBox1.SelectedValue+“from”+textBox1.Text+@“'WITH(DATAFILETYPE='widechar',KEEPIDENTITY,Keepnulls,FIRSTROW=2,fieldterminator=“++”,\t',rowtterminator=“++”\n')”,cn);cmd.ExecuteNonQuery();
您能用正确的格式将其添加到您的问题中吗?”?
USE AdventureWorks2012;
GO
CREATE TABLE myTestUniCharData (
Col1 smallint,
Col2 nvarchar(50),
Col3 nvarchar(50)
);
USE AdventureWorks2012;
GO
BULK INSERT myTestUniCharData
FROM 'C:\myTestUniCharData-w.Dat'
WITH (
DATAFILETYPE='widechar',
FIELDTERMINATOR=','
);
GO
SELECT Col1,Col2,Col3 FROM myTestUniCharData;
GO