T-SQL ステートメントのプレフィックス N の意味は何ですか? また、いつ使用すればよいですか? 質問する

T-SQL ステートメントのプレフィックス N の意味は何ですか? また、いつ使用すればよいですか? 質問する

いくつかの挿入 T-SQL クエリでプレフィックス N を見たことがあります。多くの人がNテーブルに値を挿入する前に使用しています。

N検索しましたが、テーブルに文字列を挿入する前に を含める目的が何なのか理解できませんでした。

INSERT INTO Personnel.Employees
VALUES(N'29730', N'Philippe', N'Horsford', 20.05, 1),

この「N」接頭辞はどのような目的で使用され、いつ使用されるのでしょうか?

ベストアンサー1

文字列をnvarcharデータ型として宣言するのではなく、varchar

N プレフィックスを使用して文字列を渡す Transact-SQL コードを見たことがあるかもしれません。これは、後続の文字列が Unicode であることを示します (N は実際には National language character set を表します)。つまり、CHAR、VARCHAR、または TEXT ではなく、NCHAR、NVARCHAR、または NTEXT 値を渡すことになります。

引用するマイクロソフトより:

Unicode 文字列定数の前に文字 N を付けます。N プレフィックスがない場合、文字列はデータベースの既定のコード ページに変換されます。この既定のコード ページでは、特定の文字が認識されない場合があります


これら 2 つのデータ型の違いを知りたい場合は、次の SO 投稿を参照してください。

varchar と nvarchar の違いは何ですか?

おすすめ記事