SQL Serverに、中国語、韓国語、およびヨーロッパの文字を格納できるフィールドを作成することはできますか?私の漢字はちょうど?????になります
データ型もNVARCHARです。
NVARCHAR
は、これに適したタイプです。すべてを2バイトのUnicodeに格納します。
注意する必要があるのは、SQL Server ManagementStudioでNVARCHAR
フィールドを操作する場合です。その場合は絶対に必須N'....'
プレフィックスを使用してください。
これを使用する場合:
INSERT INTO dbo.YourTable(NVarcharColumn)
VALUES('Some Chinese text here')
次に、SSMSは一時的に変換指定した文字列リテラルをVARCHAR
(非Unicode!)に変換するため、Unicodeでエンコードされた文字はすべて失われます。
ただし、以下を使用する場合:
INSERT INTO dbo.YourTable(NVarcharColumn)
VALUES(N'Some Chinese text here')
(文字列リテラルの前の[〜#〜] n [〜#〜]プレフィックスに注意してください!)SSMSは、すべてを常にUnicodeとして処理し、中国語または韓国語(またはその他の)特殊文字を処理します。保存する必要があります。