2010-05-21 154 views
20

如何将阿拉伯字符插入到sql数据库中?我尝试将阿拉伯文数据插入表中,插入脚本中的阿拉伯字符作为'??????'插入表中。如何将阿拉伯字符插入到sql数据库中?

我试图通过SQL管理工作室直接将数据粘贴到表中,并且阿拉伯字符被成功和准确插入。

我环顾四周解决了这个问题,一些线程建议将数据类型更改为nvarchar而不是varchar。我也尝试过,但没有任何运气。

如何将阿拉伯字符插入到sql数据库中?

+0

你怎么知道它没有工作?也许你的查询程序不能打印Unicode字符。什么节目显示“????”?你怎么知道它可以正确显示Unicode? – 2010-05-21 11:48:40

+0

在SQL管理工作室中,当我查询该行时,它显示为'????'同样反映在我的程序中。例如, – pavanred 2010-05-21 14:12:14

回答

40

为了能够存储Unicode字符的字段,您必须使用类型nvarchar(或其他类似的如ntext,nchar)。

要在数据库中插入unicode字符,必须使用类似nvarchar/SqlDbType.NVarChar的参数类型将文本发送为unicode。

(出于完整性:如果您正在创建SQL动态(针对常见的建议),你一个字符串,使其在unicode之前把一个N例如:。insert into table (name) values (N'Pavan')

+0

+1。感谢Guffa。还有另一个线索建议以'N'为前缀。但是,我不太确定究竟在哪里做。 – pavanred 2010-05-21 14:17:40

+1

+1为您的完整性部分,非常丰富。 – 2011-01-26 14:16:37

+0

对于'SqlDbType.NVarChar'为+1 – 2012-12-04 06:05:22