SQL Server で文字コードの形式を設定する方法

SQL Server では、以下の方法でエンコード設定ができます。

  1. データベースの作成時に「COLLATE」句で初期照合規則とエンコード形式を指定できます。例えば、以下ステートメントでUTF-8エンコード形式のデータベースを作成します。
CREATE DATABASE mydb COLLATE Latin1_General_100_CI_AS_SC_UTF8
  1. テーブルの作成時にフィールドのエンコード形式を指定する: テーブルを作成するときに、「NATIONAL」または「NCHAR」型のフィールドを使用して、特定のフィールドのエンコード形式を指定できます。たとえば、次のステートメントを使用して、UTF-8 エンコード形式を使用するフィールドを作成できます。
CREATE TABLE mytable (
   id INT,
   name NVARCHAR(50) COLLATE Latin1_General_100_CI_AS_SC_UTF8
)
  1. クエリでエンコード形式を指定する:「COLLATE」句を使用してクエリ文で特定のフィールドのエンコード形式を指定できます。たとえば、UTF-8エンコード形式を使用するフィールドに対するクエリには次の文を使用できます。
SELECT name COLLATE Latin1_General_100_CI_AS_SC_UTF8
FROM mytable

UTF-8エンコーディング形式はSQL Server2019以降でないと対応していない点に注意してください。また、エンコーディング形式の設定はデータベースのパフォーマンスや格納領域に影響を与える場合がありますので、具体的な状況に応じて検討・選択する必要があります。

bannerAds