在sql server中插入阿拉伯语单词

时间:2017-05-16 13:22:01

标签: sql sql-server

当我尝试在sql server 2008中插入阿拉伯文本作为sql variable时出现问题,插入像这个值????这样的数据。如何解决这个问题?

这是我的查询

insert into tests values(N''+@name)

结果显示如下:

screenshot

3 个答案:

答案 0 :(得分:2)

将unicode数据类型用于数据存储,并使用N literal开始字符串,如下所示:

declare @t table(col Nvarchar(100)); 
insert @t (col) values (N'your text');

或者使用适当的COLLATION与非unicode数据类型,但将您的值作为unicode数据(使用N)传递,因为您的服务器/数据库排序规则似乎与阿拉伯语不同

答案 1 :(得分:2)

试试这个,你会看到你使用的Data Type

DECLARE @V1 VARCHAR(50) = 'فيلم';
DECLARE @V2 NVARCHAR(50) = N'فيلم'

SELECT @V1 Varchar_Col, @V2 NVarchar_Col

Demo

更新

通过SqlDbType.NVarChar时尝试使用Parameter

您也可以尝试:

INSERT INTO tests (ID_Number) VALUES (@name)

答案 2 :(得分:0)

您使用的是哪种数据类型?您需要使用支持此类型的数据类型,例如NVARCHAR。

这篇由Kinchit联系的文章将解释:here