2010-05-21 155 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