Spec-Zone .ru
спецификации, руководства, описания, API
|
ALTER {DATABASE | SCHEMA} [db_name
]alter_specification
...ALTER {DATABASE | SCHEMA}db_name
UPGRADE DATA DIRECTORY NAMEalter_specification
: [DEFAULT] CHARACTER SET [=]charset_name
| [DEFAULT] COLLATE [=]collation_name
ALTER DATABASE
позволяет Вам изменить полные характеристики базы данных. Эти
характеристики сохранены в db.opt
файл в каталоге базы данных. Использовать ALTER DATABASE
, Вы нуждаетесь ALTER
полномочие на базе данных. ALTER SCHEMA
синоним для ALTER DATABASE
.
Имя базы данных может быть опущено от первого синтаксиса, когда оператор применяется к базе данных значения по умолчанию.
CHARACTER SET
пункт изменяет набор символов базы данных значения по умолчанию. COLLATE
пункт изменяет сопоставление базы данных значения по умолчанию. Раздел 10.1, "Поддержка
Набора символов", обсуждает имена сопоставления и набор символов.
Можно видеть, какие наборы символов и сопоставления являются доступным использованием, соответственно, SHOW CHARACTER SET
и SHOW COLLATION
операторы. См. Раздел
13.7.5.4,"SHOW CHARACTER SET
Синтаксис", и Раздел
13.7.5.5,"SHOW COLLATION
Синтаксис", для получения дополнительной
информации.
Если Вы изменяете набор символов значения по умолчанию или сопоставление для базы данных, сохраненные
подпрограммы, которые используют значения по умолчанию базы данных, должны быть отброшены и воссозданы так,
чтобы они использовали новые значения по умолчанию. (В сохраненной подпрограмме переменные с символьными типами
данных используют значения по умолчанию базы данных, если набор символов или сопоставление не определяются явно.
См. Раздел 13.1.15,"CREATE
PROCEDURE
и CREATE FUNCTION
Синтаксис".)
Синтаксис, который включает UPGRADE DATA DIRECTORY NAME
пункт обновляет имя
каталога, связанного с базой данных, чтобы использовать кодирование, реализованное в MySQL 5.1 для того, чтобы
отобразить имена базы данных к именам каталогов базы данных (см. Раздел
9.2.3, "Отображение Идентификаторов к Именам файлов"). Этот пункт для использования при этих
условиях:
Это предназначается, обновляя MySQL до 5.1 или позже от более старых версий.
Это предназначается, чтобы обновить имя каталога базы данных к текущему формату кодирования, если имя содержит специальные символы то кодирование потребности.
Оператор используется mysqlcheck (как вызвано mysql_upgrade).
Например, если у базы данных в MySQL 5.0 есть имя a-b-c
, имя содержит экземпляры
-
(тире) символ. В MySQL 5.0 также называют каталог базы данных a-b-c
, который не обязательно безопасен для всех файловых систем. В MySQL 5.1 и
позже, то же самое имя базы данных кодируется как a@002db@002dc
произвести
нейтральное файловой системой имя каталога.
Когда установка MySQL обновляется до MySQL 5.1 или позже от более старой версии, сервер выводит на экран имя
такой как a-b-c
(который находится в старом формате), как #mysql50#a-b-c
,
и следует обратиться к имени, используя #mysql50#
префикс. Использовать UPGRADE DATA DIRECTORY NAME
в этом случае явно сказать серверу повторно
кодировать имя каталога базы данных к текущему формату кодирования:
ALTER DATABASE `#mysql50#a-b-c` UPGRADE DATA DIRECTORY NAME;
После выполнения этого оператора можно обратиться к базе данных как a-b-c
без
специального предложения #mysql50#
префикс.