各データベースにはデータベースキャラクタセットとデータベース照合順序があり、いずれもヌルにすることはできません。CREATE
DATABASE
および ALTER DATABASE
コマンドには現在、データベースのキャラクタセットと照合順序を指定するためのオプション節があります。
CREATE DATABASE db_name [DEFAULT CHARACTER SET character_set_name [COLLATE collation_name]] ALTER DATABASE db_name [DEFAULT CHARACTER SET character_set_name [COLLATE collation_name]]
例:
CREATE DATABASE db_name DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
MySQL では、データベースキャラクタセットとデータベース照合順序が次のように選択されます。
CHARACTER SET X
と COLLATE
Y
の両方を指定した場合は、キャラクタセット
X
と照合順序 Y
。
CHARACTER SET X
を指定し、COLLATE
を指定しなかった場合は、キャラクタセット
X
とそのデフォルト照合順序。
その他の場合は、サーバキャラクタセットとサーバ照合順序。
MySQL の CREATE DATABASE ... DEFAULT CHARACTER SET
...
構文は標準 SQL CREATE SCHEMA ...
CHARACTER SET ...
構文に類似しています。このため、キャラクタセットと照合順序が異なる複数のデータベースを同一の
MySQL サーバ上に作成することができます。
テーブルのキャラクタセットと照合順序が
CREATE TABLE
ステートメントに指定されていない場合、データベースのキャラクタセットと照合順序はデフォルト値として使用されます。これらに他の用途はありません。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.