複数の SHOW
ステートメントから文字セットの追加情報が得られます。これらには SHOW CHARACTER SET
、SHOW COLLATION
、SHOW CREATE DATABASE
、SHOW CREATE TABLE
、および SHOW COLUMNS
が含まれます。ここでは、これらのステートメントについて簡単に説明します。詳細は、セクション13.7.5「SHOW 構文」を参照してください。
INFORMATION_SCHEMA
には、SHOW
ステートメントで表示されるものに類似した情報を含む複数のテーブルが含まれます。たとえば、CHARACTER_SETS
および COLLATIONS
テーブルには、SHOW CHARACTER SET
および SHOW COLLATION
で表示される情報が含まれます。第21章「INFORMATION_SCHEMA テーブル」を参照してください。
SHOW CHARACTER SET
ステートメントは使用可能な文字セットをすべて表示します。一致する文字セット名を指定するには、オプションの LIKE
句を使用します。例:
mysql> SHOW CHARACTER SET LIKE 'latin%';
+---------+-----------------------------+-------------------+--------+
| Charset | Description | Default collation | Maxlen |
+---------+-----------------------------+-------------------+--------+
| latin1 | cp1252 West European | latin1_swedish_ci | 1 |
| latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 |
| latin5 | ISO 8859-9 Turkish | latin5_turkish_ci | 1 |
| latin7 | ISO 8859-13 Baltic | latin7_general_ci | 1 |
+---------+-----------------------------+-------------------+--------+
SHOW COLLATION
からの出力には、使用可能なすべての文字セットが含まれます。一致する照合順序名を指定するには、オプションの LIKE
句を使用します。例:
mysql> SHOW COLLATION LIKE 'latin1%';
+-------------------+---------+----+---------+----------+---------+
| Collation | Charset | Id | Default | Compiled | Sortlen |
+-------------------+---------+----+---------+----------+---------+
| latin1_german1_ci | latin1 | 5 | | | 0 |
| latin1_swedish_ci | latin1 | 8 | Yes | Yes | 0 |
| latin1_danish_ci | latin1 | 15 | | | 0 |
| latin1_german2_ci | latin1 | 31 | | Yes | 2 |
| latin1_bin | latin1 | 47 | | Yes | 0 |
| latin1_general_ci | latin1 | 48 | | | 0 |
| latin1_general_cs | latin1 | 49 | | | 0 |
| latin1_spanish_ci | latin1 | 94 | | | 0 |
+-------------------+---------+----+---------+----------+---------+
SHOW CREATE DATABASE
は、所定のデータベースを作成する CREATE DATABASE
ステートメントを表示します。
mysql> SHOW CREATE DATABASE test;
+----------+-----------------------------------------------------------------+
| Database | Create Database |
+----------+-----------------------------------------------------------------+
| test | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+-----------------------------------------------------------------+
COLLATE
句が表示されていなければ、文字セットのデフォルト照合順序が適用されます。
SHOW CREATE TABLE
は類似していますが、所定のテーブルを作成する CREATE TABLE
ステートメントを表示します。カラム定義は文字セット仕様を指定し、テーブルオプションは文字セット情報を含んでいます。
SHOW COLUMNS
ステートメントは SHOW FULL COLUMNS
として呼び出された場合、テーブルのカラムの照合順序を表示します。CHAR
、VARCHAR
、または TEXT
データ型を含むカラムには照合順序があります。数値型およびほかの非文字型には照合順序はありません (Collation
値として NULL
で示されます)。例:
mysql> SHOW FULL COLUMNS FROM person\G
*************************** 1. row ***************************
Field: id
Type: smallint(5) unsigned
Collation: NULL
Null: NO
Key: PRI
Default: NULL
Extra: auto_increment
Privileges: select,insert,update,references
Comment:
*************************** 2. row ***************************
Field: name
Type: char(60)
Collation: latin1_swedish_ci
Null: NO
Key:
Default:
Extra:
Privileges: select,insert,update,references
Comment:
文字セットは表示の中にはなく、照合順序名で示されます。