2

SQL Server 2008を使用していて、テーブルの列をnvarcharに設定しています。特殊文字を含むデータがこのテーブルに誤って格納されています。例:これは1つのエントリです

それ自体がそうではないか、それ自体がそうではないかを確認し、問題を確実に解決する必要があります。

ごみは実際にはアポストロフィ(')である必要があります。照合文字列を確認しました。データベースレベルではSQL_Latin1_General_CP850_BIN2であり、サーバーレベルではSQL_Latin1_General_CP1_CI_ASです。

私のアプリケーションの他の場所で設定されているエンコーディングはUTF-8であることは確かです。

データをテーブルに正しく保存するにはどうすればよいですか?SQLクエリまたはデータベースの設定を変更する必要がありますか?

お知らせ下さい。

4

1 に答える 1

1

次の 2 つのことを確認する必要があります。

  1. 常にNVARCHAR列のデータ型として使用

  2. N'....'文字列リテラルを扱うときは、必ずプレフィックスを使用してください (たとえば、 INSERTorUPDATEステートメント内) 。

これらの 2 つが整っていれば、SQL Server は、投げる可能性のあるすべての Unicode 文字をまったく問題なく格納できます...

于 2012-05-09T08:53:14.390 に答える