MySQLでは、さまざまなレベルで文字セットと照合を指定できます。これらは、接続レベル、サーバーレベル、データベースレベル、テーブルレベル、および列レベルで指定できます。クエリで照合を指定して、前述のレベルで以前に指定された照合を上書きすることもできます。
テーブルレベルで文字セットと照合を設定するには、CREATE TABLE
を使用できます。 ステートメントまたはALTER TABLE
ステートメント(テーブルを作成するか変更するかによって異なります)。
文字セットと照合を設定する
テーブルを最初に作成するときに文字セットと照合を設定するには、CHARACTER SET
を使用します およびCOLLATE
CREATE TABLE
内の句 ステートメント:
CREATE TABLE Tasks ( TaskId INT NOT NULL AUTO_INCREMENT, TaskName VARCHAR(255) NOT NULL, PRIMARY KEY (TaskId)) CHARACTER SET latin1 COLLATE latin1_general_ci;
これにより、テーブルの文字セットがlatin1
に設定されます およびlatin1_general_ci
への照合 。これは、データベースおよびサーバーレベルで設定されたデフォルトの照合を上書きします。
文字セットと照合を変更する
既存のテーブルの文字セットと照合を変更するには、CHARACTER SET
を使用します およびCOLLATE
ALTER TABLE
内の句 ステートメント:
ALTER TABLE Tasks CHARACTER SET tis620 COLLATE tis620_thai_ci;
これにより、テーブルの文字セットがtis620
に変更されます およびtis620_thai_ci
への照合 。
文字セットと照合を確認する
MySQL Workbenchでは、テーブルを右クリックしてテーブルのメンテナンス... を選択することで、テーブルのデフォルトの照合を確認できます。 。
SQLを使用してテーブルの照合を確認する方法もいくつかあります。