web-dev-qa-db-ja.com

アラビア語の文字をSQLデータベースに挿入する方法は?

アラビア語の文字をSQLデータベースに挿入するにはどうすればよいですか?テーブルにアラビア語のデータを挿入しようとすると、挿入スクリプトのアラビア語の文字が'??????'としてテーブルに挿入されました。

SQL管理スタジオを介してテーブルにデータを直接貼り付けようとしたところ、アラビア語の文字が正しく正確に挿入されました。

この問題の解決策を探したところ、一部のスレッドはデータ型をnvarcharではなくvarcharに変更することを提案しました。私もこれを試しましたが、運がありませんでした。

アラビア語の文字をSQLデータベースに挿入するにはどうすればよいですか?

26
pavanred

フィールドにUnicode文字を格納できるようにするには、タイプnvarchar(またはntextncharのような他のタイプ)を使用する必要があります。

データベースにUnicode文字を挿入するには、nvarchar/_SqlDbType.NVarChar_のようなパラメータータイプを使用して、テキストをUnicodeとして送信する必要があります。

(完全性のため:(一般的なアドバイスに対して)SQLを動的に作成する場合は、文字列リテラルの前にNを付けてUnicodeにします。例:insert into table (name) values (N'Pavan')。)

44
Guffa