• ベストアンサー

MS SQLServer のSQLで文字列の前にN:

MS SQLServer のSQLで文字列の前にN: をつけることをよく見かけますが、 「N:」とはいったいどんな意味なのでしょうか? 教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • X-Terra
  • ベストアンサー率48% (25/52)
回答No.1

T-SQLでの話かと思いますが・・・。NCHAR/NVARCHAR型という、型(タイプ)があるのですが、これらは、夫々、national character/national character varying(SQL-92での表記法)の意味を持っています。夫々、固定長文字列(Unicode)/可変長文字列(Unicode)です。 NVARCHARはSQL-Server2000では4000文字まで、VARCHAR2は8000文字まで格納可です。(つまり、1/2になるということです) さて、N'***' とT-SQL内で書くと、''内の文字をUnicodeで表現されたものとして処理する、という意味になります。Nは、nationalの略です。ですから、日本語を使おうとするとNは必須になる、という事ですね。 こんな感じでつかいます。#N'Unicode 文字列'

kokoko
質問者

お礼

適切な回答ありがとうございました。

関連するQ&A