![]() КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
ALTER/MODIFY
ALTER [IGNORE] TABLE table ADD [COLUMN] create_clause ALTER [IGNORE] TABLE table ADD INDEX [name] (column,...) ALTER [IGNORE] TABLE table ADD UNIQUE [name] (column,...) ALTER [IGNORE] TABLE table ALTER [COLUMN] column SET DEFAULT value ALTER [IGNORE] TABLE table ALTER [COLUMN] column DROP DEFAULT ALTER [IGNORE] TABLE table CHANGE [COLUMN] column create..clause ALTER [IGNORE] TABLE table DROP [COLUMN] column ALTER [IGNORE] TABLE table DROP FOREIGN KEY key ALTER [IGNORE] TABLE table DROP INDEX key ALTER [IGNORE] TABLE table DROP PRIMARY KEY ALTER [IGNORE] TABLE table MODIFY [COLUMN] create_clause ALTER [IGNORE] TABLE table RENAME [AS] new_name Оператор ALTER охватывает широкий набор действий, которые изменяют структуру таблицы. Этот оператор используется для добавления, изменения или удаления столбцов существующей таблицы, а также для удаления индексов. Несколько операторов ALTER могут быть объединены в одно предложение с помощью запятых: ALTER TABLE mytable DROP myoldcolumn, ADD mynewcolumn INT Для модификации таблицы MySQL создает копию таблицы и изменяет ее, выполняя все модифицирующие запросы. Когда все изменения сделаны, старая таблица удаляется, а ее место занимает новая таблица. В этой точке выполняются все поставленные в очередь запросы. В целях безопасности, если какой-либо из запросов создает дублирующие ключи, которые должны быть уникальными, предложение ALTER откатывается и отменяется. Если в предложении присутствует ключевое слово IGNORE, дублированные уникальные ключи игнорируются, и запрос ALTER исполняется как обычно. Имейте в виду, что использование IGNORE для активной таблицы с уникальными ключами может привести к искажению и порче таблицы. Как указывалось выше, есть несколько разных, зачастую противоположных действий, выполняемых ALTER: ADD [COLUMN] create,clause Добавляет новый столбец в таблицу. Выражение create_clause имеет тот же вид, что и используемое в операторе CREATE (см. ниже). Таблица должна существовать и не иметь столбца с тем же именем, что у добавляемого столбца. (Ключевое слово COLUMN необязательно и не имеет эффекта.) ADD INDEX [ name ] (column,...) Создает индекс из указанных столбцов. В индексе могут быть скомбинированы до 15 столбцов. Указывать имя для индекса необязательно. Если не задано имя, индекс будет назван по имени первого столбца в списке (с числовым суффиксом _2, _3 и т. д., если это необходимо для уникальности). ADD UNIQUE [name] (column,...) Идентично ADD INDEX за исключением того, что индексированные поля гарантированно уникальны. То есть, если пользователь попытается добавить значение, уже существующее в уникальном индексе, будет выдано сообщение об ошибке. ALTER [COLUMN] column SET DEFAULT value ALTER [COLUMN] column DROP DEFAULT Создает, изменяет или удаляет значение по умолчанию для столбца. Если используется фраза SET DEFAULT, значение по умолчанию для указанного столбца изменяется на новое (даже если до этого не существовало значений по умолчанию). При использовании DROP DEFAULT, существующее значение по умолчанию удаляется. При этом любые существующие записи, созданные с помощью этого значения, остаются неизмененными. (Ключевое слово COLUMN необязательно и не имеет эффекта.) CHANGE [COLUMN] new_column_name create_clause MODIFY [COLUMN] create__clause Изменяет определение столбца. Предложение используется для изменения типа данных столбца с минимально возможным воздействием на данные. Выражение create_clause то же, что и в операторе CREATE. Оно включает имя столбца и поэтому, используя это предложение, вы изменяете имя столбца. (Например, ALTER TABLE mytable CHANGE name newname CHAR(30).) Предложение MODIFY аналогично CHANGE, но новый столбец имеет то же имя, что и старый. Ключевое слово COLUMN необязательно и не имеет эффекта. Следующие преобразования типов данных выполняются автоматически: Целых чисел к числам с плавающей запятой, и наоборот (например, BIGINT к DOUBLE). Меньших числовых значений к большим (например, INTEGER к BIGINT). Больших числовых значений к меньшим (например, DOUBLE к FLOAT). Если значение выходит за пределы нового типа, используется максимально возможное значение нового типа данных (или наименьшее из отрицательных).
Дата добавления: 2015-05-10; Просмотров: 283; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |