ALTER TABLE

Автор: manager Понедельник, Март 24th, 2008 Нет комментариев

Рубрика: MySQL

СИНТАКСИС:
ALTER [IGNORE] TABLE table_name alter_specification [, alter_specification ...]

alter_specification:
ADD [COLUMN] create_definition or
CHANGE [COLUMN] old_column_name create_definition or
ALTER [COLUMN] column_name { SET default | DROP DEFAULT } or
DROP [COLUMN] column_name or DROP PRIMARY KEY or DROP INDEX key_name
DROP FOREIGN KEY key_name

ОПИСАНИЕ:

Команда ALTER TABLE может быть использована для изменения определения таблицы. ALTER TABLE работает с временно созданной таблицей в которую копирует все данные из текущей таблицы. Когда копия готова, старая таблица удаляется, а новая переименуется в нее. Это выполнено таким способом, что все изменения автоматически переназначаются на новую таблицу.

Пока работает ALTER TABLE, старая таблица доступна для других клиентов. Обновления и запись в таблицу останавливаются и будут выполнены только после того, как новая таблица будет готова. Если IGNORE не определен, то копирование будет прервано и процесс отработан назад в случае наличия любых уникальных ключей, дублированных в новой таблице.

- CHANGE column_name, DROP column_name и DROP INDEX являются MySQL расширениями ANSI SQL.
- [COLUMN] факультативный параметр и может быть опущен.
- Конструкция ALTER [COLUMN] может быть использована для изменения или удаления старого значения по умолчанию.
- ADD и CHANGE используют один и тот же create_definition, что и CREATE TABLE. См. CREATE TABLE.
- Если вы удаляете column_name, которое является частью составного ключа, то часть ключа будет удалена. Если все части ключа удалены, то будет удален весь ключ.
- DROP PRIMARY KEY удаляет первый уникальный ключ в таблице.
- CHANGE делает лучшее преобразование существующей информации в новый формат.
- Синтаксис DROP FOREIGN KEY пока существует для запланированных функциональных возможностей. В настоящее время не делает ничего.

Вы можете использовать функцию C API mysql_info(&MYSQL_RESULT) чтобы узнать, сколько записей скопировано и сколько удалено из-за дублированных ключей.

Для использования команды ALTER TABLE вы должны иметь права доступа select, insert, delete, update, create и drop для этой таблицы

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты