Алексей Паутов - MySQL: руководство профессионала
CREATE_OPTIONS
Create_options
MySQL extension
TABLE_COMMENT
Комментарий
MySQL extension
Примечания:
TABLE_SCHEMA и TABLE_NAME одиночное поле в выводе SHOW, например: Table_in_db1.
TABLE_TYPE должен быть BASE TABLE или VIEW. Если таблица временная, то TABLE_TYPE = TEMPORARY. Не имеется никаких временных view, так что это однозначно.
Для разбитых на разделы таблиц, начиная с MySQL 5.1.9, столбец ENGINE показывает тип памяти, используемого всеми разделами. Раньше этот столбец показывал для таких таблиц PARTITION.
Столбец TABLE_ROWS NULL, если таблица находится в базе данных INFORMATION_SCHEMA. Для таблиц InnoDB счетчтк строк только грубая оценка, используемая в оптимизации SQL.
Для таблиц, использующих тип памяти NDBCLUSTER, начиная с MySQL 5.1.12, столбец DATA_LENGTH отражает истинное количество памяти для столбцов с переменной шириной. См. Глюк #18413.
Обратите внимание: так как MySQL Cluster распределяет память для столбцов с переменной шириной в 10-страничных блоках по 32 килобайта каждый, использование места для таких столбцов сообщено в приращениях по 320 KB.
Мы не имеем ничего для заданного по умолчанию набора символов таблицы. TABLE_COLLATION близко, потому что имена объединения начинаются с имени набора символов.
Начиная с MySQL 5.1.9, столбец CREATE_OPTIONS показывается разбитый на разделы, если таблица разбита на разделы.
Следующие инструкции эквивалентны:
SELECT table_name FROM INFORMATION_SCHEMA.TABLES
[WHERE table_schema = 'db_name']
[WHERE|AND table_name LIKE 'wild']
SHOW TABLES [FROM db_name]
[LIKE 'wild']
9.3. Таблица INFORMATION_SCHEMA COLUMNS
Таблица COLUMNS обеспечивает информацию относительно столбцов в таблицах.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
TABLE_CATALOG
NULL
TABLE_SCHEMA
TABLE_NAME
COLUMN_NAME
Поле
ORDINAL_POSITION
См. примечания
COLUMN_DEFAULT
Значение по умолчанию
IS_NULLABLE
Null
DATA_TYPE
Type
CHARACTER_MAXIMUM_LENGTH
Type
CHARACTER_OCTET_LENGTH
NUMERIC_PRECISION
Type
NUMERIC_SCALE
Type
CHARACTER_SET_NAME
COLLATION_NAME
Collation
COLUMN_TYPE
Type
MySQL extension
COLUMN_KEY
Key
MySQL extension
EXTRA
Extra
MySQL extension
COLUMN_COMMENT
Comment
MySQL extension
Примечания:
В SHOW Type отображает включает значения из нескольких различных столбцов COLUMNS.
ORDINAL_POSITION необходим, потому что Вы могли бы указать ORDER BY ORDINAL_POSITION. В отличие от SHOW, SELECT не имеет автоматического упорядочения.
CHARACTER_OCTET_LENGTH должен быть таким же, как CHARACTER_MAXIMUM_LENGTH, если бы не многобайтовые наборы символов.
CHARACTER_SET_NAME может быть получен из Collation. Например, если Вы говорите SHOW FULL COLUMNS FROM t, и видите в столбце Collation значение latin1_swedish_ci, набор символов то, что перед первым символом подчеркивания: latin1.
Следующие инструкции почти эквивалентны:
SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'tbl_name'
[AND table_schema = 'db_name']
[AND column_name LIKE 'wild']
SHOW COLUMNS FROM tbl_name
[FROM db_name]
[LIKE 'wild']
9.4. Таблица INFORMATION_SCHEMA STATISTICS
Таблица STATISTICS обеспечивает информацию относительно индексов таблицы.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
TABLE_CATALOG
NULL
TABLE_SCHEMA
=база данных
TABLE_NAME
Table
NON_UNIQUE
Non_unique
INDEX_SCHEMA
=база данных
INDEX_NAME
Key_name
SEQ_IN_INDEX
Seq_in_index
COLUMN_NAME
Column_name
COLLATION
Collation
CARDINALITY
Cardinality
SUB_PART
Sub_part
MySQL extension
PACKED
Packed
MySQL extension
NULLABLE
Null
MySQL extension
INDEX_TYPE
Index_type
MySQL extension
COMMENT
Comment
MySQL extension
Примечания:
Не имеется никакой стандартной таблицы для индексов. Предшествующий список подобен тому, что возвращается SQL Server 2000 для sp_statistics, за исключением того, что заменили имя QUALIFIER на CATALOG и OWNER на SCHEMA.
Предшествующая таблица и вывод из SHOW INDEX получен от того же самого родителя. Так что корреляция уже близкая.
Следующие инструкции эквивалентны:SELECT * FROM INFORMATION_SCHEMA.STATISTICS
WHERE table_name = 'tbl_name'
[AND table_schema = 'db_name']
SHOW INDEX FROM tbl_name
[FROM db_name]
9.5. Таблица INFORMATION_SCHEMA USER_PRIVILEGES
Таблица USER_PRIVILEGES обеспечивает информацию относительно глобальных привилегий. Эта информация исходит из таблицы предоставления привилегий mysql.user.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
GRANTEE
'
user_name
'@'
host_name
'
value, MySQL extension
TABLE_CATALOG
NULL
, MySQL extension
PRIVILEGE_TYPE
MySQL extension
IS_GRANTABLE
MySQL extension
Примечания:
Это ненормативная таблица. Требуется значения от таблицы mysql.user.
9.6. Таблица INFORMATION_SCHEMA SCHEMA_PRIVILEGES
Таблица SCHEMA_PRIVILEGES обеспечивает информацию относительно схемы привилегиями (базы данных). Эта информация исходит из таблицы предоставления mysql.db.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
GRANTEE
'
user_name
'@'
host_name
'
value, MySQL extension
TABLE_CATALOG
NULL
, MySQL extension
TABLE_SCHEMA
MySQL extension
PRIVILEGE_TYPE
MySQL extension
IS_GRANTABLE
MySQL extension
Примечания:
Это ненормативная таблица. Требуется значения от таблицы mysql.db.
9.7. Таблица INFORMATION_SCHEMA TABLE_PRIVILEGES
Таблица TABLE_PRIVILEGES обеспечивает информацию относительно привилегий таблицы. Эта информация исходит из таблицы предоставления mysql.tables_priv.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
GRANTEE
'
user_name
'@'
host_name
'
value
TABLE_CATALOG
NULL
TABLE_SCHEMA
TABLE_NAME
PRIVILEGE_TYPE
IS_GRANTABLE
Примечания:
PRIVILEGE_TYPE может содержать одно (и только одно!) из этих значений: SELECT, INSERT, UPDATE, REFERENCES, ALTER, INDEX, DROP или CREATE VIEW.
Следующие инструкции не эквивалентны:
SELECT … FROM INFORMATION_SCHEMA.TABLE_PRIVILEGES
SHOW GRANTS …
9.8. Таблица INFORMATION_SCHEMA COLUMN_PRIVILEGES
Таблица COLUMN_PRIVILEGES обеспечивает информацию относительно привилегий столбца. Эта информация исходит из таблицы предоставления mysql.columns_priv.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
GRANTEE
'
user_name
'@'
host_name
'
value
TABLE_CATALOG
NULL
TABLE_SCHEMA
TABLE_NAME
COLUMN_NAME
PRIVILEGE_TYPE
IS_GRANTABLE
Примечания:
В выводе из SHOW FULL COLUMNS все привилегии перечислены в одном поле и в нижнем регистре, например, select, insert, update, references. В COLUMN_PRIVILEGES имеется одна привилегия на строку верхнего регистра.
PRIVILEGE_TYPE может содержать одно (и только одно!) из этих значений: SELECT, INSERT, UPDATE и REFERENCES.
Если пользователь имеет опцию GRANT OPTION, IS_GRANTABLE должна быть YES. Иначе IS_GRANTABLE будет NO. Вывод не вносит в список GRANT OPTION как отдельную привилегию.
Следующие инструкции не эквивалентны:SELECT … FROM INFORMATION_SCHEMA.COLUMN_PRIVILEGES
SHOW GRANTS …
9.9. Таблица INFORMATION_SCHEMA CHARACTER_SETS
Таблица CHARACTER_SETS обеспечивает информацию относительно доступных наборов символов.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
CHARACTER_SET_NAME
Charset
DEFAULT_COLLATE_NAME
Default collation
DESCRIPION
Description
MySQL extension
MAXLEN
Maxlen
MySQL extension
Следующие инструкции эквивалентны:
SELECT * FROM INFORMATION_SCHEMA.CHARACTER_SETS
[WHERE name LIKE 'wild']
SHOW CHARACTER SET [LIKE 'wild']
9.10. Таблица INFORMATION_SCHEMA COLLATIONS
Таблица COLLATIONS обеспечивает информацию относительно объединений для каждого набора символов.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
COLLATION_NAME
Collation
CHARACTER_SET_NAME
Charset
MySQL extension
ID
Id
MySQL extension
IS_DEFAULT
Default
MySQL extension
IS_COMPILED
Compiled
MySQL extension
SORTLEN
Sortlen
MySQL extension
Следующие инструкции эквивалентны:
SELECT COLLATION_NAME FROM INFORMATION_SCHEMA.COLLATIONS
[WHERE collation_name LIKE 'wild']
SHOW COLLATION [LIKE 'wild']
9.11. Таблица INFORMATION_SCHEMA COLLATION_CHARACTER_SET_APPLICABILITY
Таблица COLLATION_CHARACTER_SET_APPLICABILITY указывает то, какому объединению соответствует набор символов. Столбцы эквивалентны к первым двум полям вывода SHOW COLLATION.
INFORMATION_SCHEMA
Name
SHOW
Name
Remarks
COLLATION_NAME
Collation
CHARACTER_SET_NAME
Charset
9.12. Таблица INFORMATION_SCHEMA TABLE_CONSTRAINTS
Таблица TABLE_CONSTRAINTS описывает, которые таблицы имеют ограничения.