Spec-Zone .ru
спецификации, руководства, описания, API
|
Some extensions to SHOW
statements accompany the implementation of INFORMATION_SCHEMA
:
INFORMATION_SCHEMA
is an information database, so its name is included in the output
from SHOW DATABASES
. Similarly, SHOW TABLES
can be used with INFORMATION_SCHEMA
to obtain a list of its tables:
mysql> SHOW TABLES FROM
INFORMATION_SCHEMA;
+---------------------------------------+| Tables_in_INFORMATION_SCHEMA |+---------------------------------------+| CHARACTER_SETS || COLLATIONS || COLLATION_CHARACTER_SET_APPLICABILITY || COLUMNS || COLUMN_PRIVILEGES || ENGINES || EVENTS || FILES || GLOBAL_STATUS || GLOBAL_VARIABLES || KEY_COLUMN_USAGE || PARTITIONS || PLUGINS || PROCESSLIST || REFERENTIAL_CONSTRAINTS || ROUTINES || SCHEMATA || SCHEMA_PRIVILEGES || SESSION_STATUS || SESSION_VARIABLES || STATISTICS || TABLES || TABLE_CONSTRAINTS || TABLE_PRIVILEGES || TRIGGERS || USER_PRIVILEGES || VIEWS |+---------------------------------------+27 rows in set (0.00 sec)
SHOW
COLUMNS
and DESCRIBE
can display information about the columns in individual INFORMATION_SCHEMA
tables.
SHOW
statements that accept a LIKE
clause to limit the rows displayed also permit a WHERE
clause that specifies more general conditions that selected rows must satisfy:
SHOW CHARACTER SETSHOW COLLATIONSHOW COLUMNSSHOW DATABASESSHOW FUNCTION STATUSSHOW INDEXSHOW OPEN TABLESSHOW PROCEDURE STATUSSHOW STATUSSHOW TABLE STATUSSHOW TABLESSHOW TRIGGERSSHOW VARIABLES
The WHERE
clause, if present, is evaluated against the column names displayed by
the SHOW
statement. For example, the SHOW CHARACTER SET
statement produces these output columns:
mysql> SHOW CHARACTER SET;
+----------+-----------------------------+---------------------+--------+| Charset | Description | Default collation | Maxlen |+----------+-----------------------------+---------------------+--------+| big5 | Big5 Traditional Chinese | big5_chinese_ci | 2 || dec8 | DEC West European | dec8_swedish_ci | 1 || cp850 | DOS West European | cp850_general_ci | 1 || hp8 | HP West European | hp8_english_ci | 1 || koi8r | KOI8-R Relcom Russian | koi8r_general_ci | 1 || latin1 | cp1252 West European | latin1_swedish_ci | 1 || latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 |...
To use a WHERE
clause with SHOW CHARACTER SET
, you would refer to those column names. As an example, the
following statement displays information about character sets for which the default collation contains the
string 'japanese'
:
mysql> SHOW CHARACTER SET WHERE `Default collation`
LIKE '%japanese%';
+---------+---------------------------+---------------------+--------+| Charset | Description | Default collation | Maxlen |+---------+---------------------------+---------------------+--------+| ujis | EUC-JP Japanese | ujis_japanese_ci | 3 || sjis | Shift-JIS Japanese | sjis_japanese_ci | 2 || cp932 | SJIS for Windows Japanese | cp932_japanese_ci | 2 || eucjpms | UJIS for Windows Japanese | eucjpms_japanese_ci | 3 |+---------+---------------------------+---------------------+--------+
This statement displays the multi-byte character sets:
mysql> SHOW CHARACTER SET WHERE Maxlen > 1;
+---------+---------------------------+---------------------+--------+| Charset | Description | Default collation | Maxlen |+---------+---------------------------+---------------------+--------+| big5 | Big5 Traditional Chinese | big5_chinese_ci | 2 || ujis | EUC-JP Japanese | ujis_japanese_ci | 3 || sjis | Shift-JIS Japanese | sjis_japanese_ci | 2 || euckr | EUC-KR Korean | euckr_korean_ci | 2 || gb2312 | GB2312 Simplified Chinese | gb2312_chinese_ci | 2 || gbk | GBK Simplified Chinese | gbk_chinese_ci | 2 || utf8 | UTF-8 Unicode | utf8_general_ci | 3 || ucs2 | UCS-2 Unicode | ucs2_general_ci | 2 || cp932 | SJIS for Windows Japanese | cp932_japanese_ci | 2 || eucjpms | UJIS for Windows Japanese | eucjpms_japanese_ci | 3 |+---------+---------------------------+---------------------+--------+