Алексей Паутов - MySQL: руководство профессионала
- Название:MySQL: руководство профессионала
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Алексей Паутов - MySQL: руководство профессионала краткое содержание
Это не совсем книга. Просто по ходу работы и изучения пакета у меня накопилось немало заметок, которые я в конце концов собрал воедино и опубликовал с оглавлением и под единым названием. Данные заметки относятся к версиям 4 и 5 пакета MySQL. По ходу текста особо отмечены места, относящиеся к специфической версии пакета.
MySQL: руководство профессионала - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Следующие инструкции эквивалентны:
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 описывает, которые таблицы имеют ограничения.
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 описывает, которые столбцы ключа имеют ограничения.
Читать дальшеИнтервал:
Закладка: