当我导入CSV或文本文件并将其批量插入我的数据库时,该过程会成功地将所有记录添加到表中。
我的问题是插入的字符串是阿拉伯语,在我的数据库表中显示为符号。我该如何解决这个问题?
答案 0 :(得分:0)
使用查询
插入您需要为varchar / char列选择阿拉伯语排序规则或使用Unicode(nchar / nvarchar)。
CREATE TABLE MyTable
(
MyArabicColumn VARCHAR(100) COLLATE Arabic_CI_AI_KS_WS,
MyNVarCharColumn NVARCHAR(100)
)
两列都应该有用。
批量插入文件
This article解释了如何批量插入unicode字符。
测试表
USE AdventureWorks2012;
GO
CREATE TABLE myTestUniCharData (
Col1 smallint,
Col2 nvarchar(50),
Col3 nvarchar(50)
);
批量插入
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