Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Pautov_MySQL_rukovodstvo_professionala.328368.rtf
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
713.1 Кб
Скачать

9.1. Таблица information_schema schemata

Схема является базой данных, так что таблица SCHEMATA обеспечивает информацию относительно баз данных

INFORMATION_SCHEMA Name | SHOW Name | Remarks

CATALOG_NAME |  | NULL

SCHEMA_NAME | | База данных

DEFAULT_CHARACTER_SET_NAME | |

DEFAULT_COLLATION_NAME | |

SQL_PATH | | NULL

Следующие инструкции эквивалентны:

SELECT SCHEMA_NAME AS `Database` FROM INFORMATION_SCHEMA.SCHEMATA

[WHERE SCHEMA_NAME LIKE 'wild ']

SHOW DATABASES [LIKE 'wild ']

9.2. Таблица information_schema tables

Таблица TABLES обеспечивает информацию относительно таблиц в базах данных.

INFORMATION_SCHEMA

Name

SHOW

Name

Remarks

TABLE_CATALOG

NULL

TABLE_SCHEMA

Table_

TABLE_NAME

Table_

TABLE_TYPE

ENGINE

Тип памяти

MySQL extension

VERSION

Version

MySQL extension

ROW_FORMAT

Row_format

MySQL extension

TABLE_ROWS

Rows

MySQL extension

AVG_ROW_LENGTH

Avg_row_length

MySQL extension

DATA_LENGTH

Data_length

MySQL extension

MAX_DATA_LENGTH

Max_data_length

MySQL extension

INDEX_LENGTH

Index_length

MySQL extension

DATA_FREE

Data_free

MySQL extension

AUTO_INCREMENT

Auto_increment

MySQL extension

CREATE_TIME

Create_time

MySQL extension

UPDATE_TIME

Update_time

MySQL extension

CHECK_TIME

Check_time

MySQL extension

TABLE_COLLATION

Collation

MySQL extension

CHECKSUM

Checksum

MySQL extension

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 отражает истинное количество памяти для столбцов с переменной шириной. См. Глюк #1841360.

Обратите внимание : так как 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 ']

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]