Kniga-Online.club
» » » » Алексей Паутов - MySQL: руководство профессионала

Алексей Паутов - MySQL: руководство профессионала

Читать бесплатно Алексей Паутов - MySQL: руководство профессионала. Жанр: Базы данных издательство неизвестно, год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

INFORMATION_SCHEMA

Name

SHOW

Name

Remarks

CONSTRAINT_CATALOG

NULL

CONSTRAINT_SCHEMA

CONSTRAINT_NAME

TABLE_SCHEMA

TABLE_NAME

CONSTRAINT_TYPE

Примечания:

Значение CONSTRAINT_TYPE может быть UNIQUE, PRIMARY KEY или FOREIGN KEY.

Информация UNIQUE и PRIMARY KEY соответствует полю Key_name в выводе SHOW INDEX, если поле Non_unique равно 0.

Столбец CONSTRAINT_TYPE может содержать одно из этих значений: UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK. Это столбец CHAR (не ENUM). Значение CHECK недоступно, пока пакет не поддерживает CHECK.

9.13. Таблица INFORMATION_SCHEMA KEY_COLUMN_USAGE

Таблица KEY_COLUMN_USAGE описывает, которые столбцы ключа имеют ограничения.

INFORMATION_SCHEMA

Name

SHOW

Name

Remarks

CONSTRAINT_CATALOG

NULL

CONSTRAINT_SCHEMA

CONSTRAINT_NAME

TABLE_CATALOG

TABLE_SCHEMA

TABLE_NAME

COLUMN_NAME

ORDINAL_POSITION

POSITION_IN_UNIQUE_CONSTRAINT

REFERENCED_TABLE_SCHEMA

REFERENCED_TABLE_NAME

REFERENCED_COLUMN_NAME

Примечания:

Если ограничение внешний ключ, то это столбец внешнего ключа, не столбец, а не тот столюец, на который внешний ключ ссылается.

Значение ORDINAL_POSITION позиция столбца внутри ограничения, а не позиция столбца внутри таблицы. Позиции столбца пронумерованы, начиная с 1.

Значение POSITION_IN_UNIQUE_CONSTRAINT NULL для ограничений unique и primary-key. Для ограничений foreign-key это порядковая позиция в ключе таблицы, которая вызвана.

Например, предположите, что имеется две таблицы с именами t1 и t3, которые имеют следующие определения:

CREATE TABLE t1 (s1 INT, s2 INT, s3 INT, PRIMARY KEY(s3)) ENGINE=InnoDB;

CREATE TABLE t3 (s1 INT, s2 INT, s3 INT, KEY(s1),

CONSTRAINT CO FOREIGN KEY (s2) REFERENCES t1(s3)) ENGINE=InnoDB;

Для этих двух таблиц таблица KEY_COLUMN_USAGE имеет две строки:

Одна строка с CONSTRAINT_NAME = 'PRIMARY', TABLE_NAME = 't1', COLUMN_NAME = 's3', ORDINAL_POSITION = 1, POSITION_IN_UNIQUE_CONSTRAINT = NULL.

Одна строка с CONSTRAINT_NAME = 'CO', TABLE_NAME = 't3', COLUMN_NAME = 's2', ORDINAL_POSITION = 1, POSITION_IN_UNIQUE_CONSTRAINT = 1.

9.14. Таблица INFORMATION_SCHEMA ROUTINES

Таблица ROUTINES обеспечивает информацию относительно сохраненных подпрограмм (процедуры и функций). Таблица ROUTINES не включает определяемые пользователем функции (UDF).

Столбец mysql.proc name указывает столбец таблицы mysql.proc, который соответствует столбцу таблицы INFORMATION_SCHEMA.ROUTINES.

INFORMATION_SCHEMA

Name

mysql.proc

Name

Remarks

SPECIFIC_NAME

specific_name

ROUTINE_CATALOG

NULL

ROUTINE_SCHEMA

db

ROUTINE_NAME

name

ROUTINE_TYPE

type

{PROCEDURE|FUNCTION}

DTD_IDENTIFIER

(data type descriptor)

ROUTINE_BODY

SQL

ROUTINE_DEFINITION

body

EXTERNAL_NAME

NULL

EXTERNAL_LANGUAGE

language

NULL

PARAMETER_STYLE

SQL

IS_DETERMINISTIC

is_deterministic

SQL_DATA_ACCESS

sql_data_access

SQL_PATH

NULL

SECURITY_TYPE

security_type

CREATED

created

LAST_ALTERED

modified

SQL_MODE

sql_mode

MySQL extension

ROUTINE_COMMENT

comment

MySQL extension

DEFINER

definer

MySQL extension

Примечания:

MySQL вычисляет EXTERNAL_LANGUAGE так:

Если mysql.proc.language='SQL', EXTERNAL_LANGUAGE равен NULL

Иначе EXTERNAL_LANGUAGE равен mysql.proc.language. Однако, пока не имеется внешних языков, так что это всегда NULL.

9.15. Таблица INFORMATION_SCHEMA VIEWS

Таблица VIEWS обеспечивает информацию относительно view в базах данных. Вы должны иметь привилегию SHOW VIEW, чтобы обратиться к этой таблице.

INFORMATION_SCHEMA

Name

SHOW

Name

Remarks

TABLE_CATALOG

NULL

TABLE_SCHEMA

TABLE_NAME

VIEW_DEFINITION

CHECK_OPTION

IS_UPDATABLE

DEFINER

SECURITY_TYPE

Примечания:

Столбец VIEW_DEFINITION показывает большинство из того, что Вы видите в поле Create Table, которое выводится SHOW CREATE VIEW. Пропустите слова перед SELECT и перед WITH CHECK OPTION. Предположите, что первоначальная инструкция была такой:

CREATE VIEW v AS SELECT s2,s1 FROM t WHERE s1 > 5 ORDER BY s1 WITH CHECK OPTION;

Затем определение этого view выглядит следующим образом:

SELECT s2,s1 FROM t WHERE s1 > 5 ORDER BY s1

Столбец CHECK_OPTION всегда имеет значение NONE.

Столбец IS_UPDATABLE равен YES, если view обновляемый, в противном случае NO.

Столбец DEFINER указывает, кто определил view. SECURITY_TYPE имеет значение DEFINER или INVOKER.

9.16. Таблица INFORMATION_SCHEMA TRIGGERS

Таблица TRIGGERS обеспечивает информацию относительно триггеров. Вы должны иметь привилегию SUPER, чтобы обратиться к этой таблице.

INFORMATION_SCHEMA

Name

SHOW

Name

Remarks

TRIGGER_CATALOG

NULL

TRIGGER_SCHEMA

TRIGGER_NAME

Trigger

EVENT_MANIPULATION

Event

EVENT_OBJECT_CATALOG

NULL

EVENT_OBJECT_SCHEMA

EVENT_OBJECT_TABLE

Table

ACTION_ORDER

0

ACTION_CONDITION

NULL

ACTION_STATEMENT

Statement

ACTION_ORIENTATION

ROW

ACTION_TIMING

Timing

ACTION_REFERENCE_OLD_TABLE

NULL

ACTION_REFERENCE_NEW_TABLE

NULL

ACTION_REFERENCE_OLD_ROW

OLD

ACTION_REFERENCE_NEW_ROW

NEW

CREATED

NULL

(

0

)

SQL_MODE

MySQL extension

DEFINER

MySQL extension

Примечания:

Столбцы TRIGGER_SCHEMA и TRIGGER_NAME содержат имя базы данных, в которой находится триггер и его имя, соответственно.

Столбец EVENT_MANIPULATION содержит одно из значений 'INSERT', 'DELETE' или 'UPDATE'.

Каждый триггер связан точно с одной таблицей. Столбцы EVENT_OBJECT_SCHEMA и EVENT_OBJECT_TABLE содержат базу данных, в которой эта таблица расположена, и имя таблицы.

Инструкция ACTION_ORDER содержит порядковую позицию действия триггера внутри списка подобных в той же самой таблице. В настоящее время это значение всегда 0, потому что невозможно иметь больше, чем один триггер с теми же самыми EVENT_MANIPULATION и ACTION_TIMING на той же самой таблице.

Столбец ACTION_STATEMENT содержит инструкцию, которая будет выполнена, когда вызывается триггер. Это текст, отображаемый в столбце Statement вывода SHOW TRIGGERS. Обратите внимание, что на эти тексты распространяется кодирование в UTF-8.

Столбец ACTION_ORIENTATION всегда содержит значения 'ROW'.

Столбец ACTION_TIMING содержит одно из двух значений: 'BEFORE' или 'AFTER'.

Столбцы ACTION_REFERENCE_OLD_ROW и ACTION_REFERENCE_NEW_ROW содержат старые и новые идентификаторы столбцов, соответственно. Это означает, что ACTION_REFERENCE_OLD_ROW всегда содержит значение 'OLD' и ACTION_REFERENCE_NEW_ROW 'NEW'.

Столбец SQL_MODE показывает режим сервера SQL, который был установлен, когда триггер был создан (и таким образом, который остается в силе для триггера, когда это вызывается, независимо от текущей ситуации). Возможный диапазон значений для этого столбца такой же, как для переменной системы sql_mode.

Столбец DEFINER был добавлен в MySQL 5.1.2. DEFINER указывает, кто определил триггер.

Следующие столбцы в настоящее время всегда содержат NULL:

TRIGGER_CATALOG,

EVENT_OBJECT_CATALOG,

ACTION_CONDITION,

ACTION_REFERENCE_OLD_TABLE,

ACTION_REFERENCE_NEW_TABLE,

CREATED.

Пример, используем ins_sum:

mysql> SELECT * FROM INFORMATION_SCHEMA.TRIGGERSG

*************************** 1. row ***************************

TRIGGER_CATALOG: NULL

TRIGGER_SCHEMA: test

TRIGGER_NAME: ins_sum

EVENT_MANIPULATION: INSERT

EVENT_OBJECT_CATALOG: NULL

EVENT_OBJECT_SCHEMA: test

EVENT_OBJECT_TABLE: account

ACTION_ORDER: 0

ACTION_CONDITION: NULL

ACTION_STATEMENT: SET @sum = @sum + NEW.amount

ACTION_ORIENTATION: ROW

ACTION_TIMING: BEFORE

ACTION_REFERENCE_OLD_TABLE: NULL

ACTION_REFERENCE_NEW_TABLE: NULL

ACTION_REFERENCE_OLD_ROW: OLD

ACTION_REFERENCE_NEW_ROW: NEW

CREATED: NULL

SQL_MODE:

DEFINER: [email protected]

9.17. Таблица INFORMATION_SCHEMA PLUGINS

Таблица PLUGINS обеспечивает информацию относительно расширений сервера.

INFORMATION_SCHEMA

Name

SHOW

Name

Remarks

PLUGIN_NAME

Name

MySQL extension

PLUGIN_VERSION

MySQL extension

PLUGIN_STATUS

Status

MySQL extension

PLUGIN_TYPE

Type

MySQL extension

PLUGIN_TYPE_VERSION

MySQL extension

PLUGIN_LIBRARY

Library

MySQL extension

PLUGIN_LIBRARY_VERSION

MySQL extension

PLUGIN_AUTHOR

MySQL extension

PLUGIN_DESCRIPTION

MySQL extension

Примечания:

Таблица PLUGINS ненормативная. Это было добавлено в MySQL 5.1.5.

9.18. Таблица INFORMATION_SCHEMA ENGINES

Таблица ENGINES обеспечивает информацию относительно типов памяти.

INFORMATION_SCHEMA

Name

SHOW

Name

Remarks

ENGINE

Engine

MySQL extension

SUPPORT

Support

MySQL extension

COMMENT

Comment

MySQL extension

TRANSACTIONS

Transactions

MySQL extension

XA

XA

MySQL extension

SAVEPOINTS

Savepoints

MySQL extension

Примечания:

Таблица ENGINES ненормативная. Это было добавлено в MySQL 5.1.5.

9.19. Таблица INFORMATION_SCHEMA PARTITIONS

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

INFORMATION_SCHEMA

Name

SHOW

Name

Remarks

TABLE_CATALOG

MySQL extension

TABLE_SCHEMA

MySQL extension

TABLE_NAME

MySQL extension

PARTITION_NAME

MySQL extension

SUBPARTITION_NAME

MySQL extension

PARTITION_ORDINAL_POSITION

MySQL extension

SUBPARTITION_ORDINAL_POSITION

MySQL extension

Перейти на страницу:

Алексей Паутов читать все книги автора по порядку

Алексей Паутов - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


MySQL: руководство профессионала отзывы

Отзывы читателей о книге MySQL: руководство профессионала, автор: Алексей Паутов. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*