ALTER — это команда, используемая для изменения структуры таблицы путем добавления различных предложений в команду alter . Исходя из сценария, нам нужно добавить соответствующее предложение в команду alter. В этой главе мы обсудим различные сценарии изменения команды.
Изменить таблицу Добавить
Alter Table Add — команда, используемая для добавления нового столбца в таблицу вместе с соответствующим типом данных. Эта команда фиксирует транзакцию в этом соединении.
Синтаксис
Ниже приводится общий синтаксис команды Alter Table Add.
ALTER TABLE [ IF EXISTS ] tableName ADD [ COLUMN ] { [ IF NOT EXISTS ] columnDefinition [ { BEFORE | AFTER } columnName ] | ( { columnDefinition } [,...] ) }
пример
В этом примере мы добавим новый столбец start_date в таблицу tutorials_tbl . Тип данных для start_date — Дата. Ниже приведен запрос на добавление нового столбца.
ALTER TABLE tutorials_tbl ADD start_date DATE;
Приведенный выше запрос приводит к следующему выводу.
(6) rows effected
Изменить таблицу Добавить ограничение
Изменить ограничение добавления таблицы — это команда, используемая для добавления в таблицу различных ограничений, таких как первичный ключ, внешний ключ, не ноль и т. Д.
Требуемые индексы создаются автоматически, если они еще не существуют. Невозможно отключить проверку уникального ограничения. Эта команда фиксирует открытую транзакцию в этом соединении.
Синтаксис
Ниже приведен общий синтаксис команды ограничения таблицы Alter.
ALTER TABLE [ IF EXISTS ] tableName ADD constraint [ CHECK | NOCHECK ]
пример
В этом примере мы добавим ограничение первичного ключа (tutorials_tbl_pk) к идентификатору столбца таблицы tutorials_tbl , используя следующий запрос.
ALTER TABLE tutorials_tbl ADD CONSTRAINT tutorials_tbl_pk PRIMARYKEY(id);
Приведенный выше запрос приводит к следующему выводу.
(6) row (s) effected
Alter Table Rename Constraint
Эта команда используется для переименования имени ограничения определенной таблицы отношений. Эта команда фиксирует открытую транзакцию в этом соединении.
Синтаксис
Ниже приведен общий синтаксис команды «Изменить ограничение переименования таблиц».
ALTER TABLE [ IF EXISTS ] tableName RENAME oldConstraintName TO newConstraintName
При использовании этого синтаксиса убедитесь, что старое имя ограничения должно существовать с соответствующим столбцом.
пример
В этом примере мы изменим имя ограничения первичного ключа таблицы tutorials_tbl с tutorials_tbl_pk на tutorials_tbl_pk_constraint . Ниже приведен запрос для этого.
ALTER TABLE tutorials_tbl RENAME CONSTRAINT tutorials_tbl_pk TO tutorials_tbl_pk_constraint;
Приведенный выше запрос приводит к следующему выводу.
(1) row (s) effected
Изменить таблицу Изменить столбец
Эта команда используется для изменения структуры и свойств столбца конкретной таблицы. Изменение свойств означает изменение типа данных столбца, переименование столбца, изменение значения идентификатора или изменение избирательности.
Синтаксис
Ниже приведен общий синтаксис команды «Изменить таблицу».
ALTER TABLE [ IF EXISTS ] tableName ALTER COLUMN columnName { { dataType [ DEFAULT expression ] [ [ NOT ] NULL ] [ AUTO_INCREMENT | IDENTITY ] } | { RENAME TO name } | { RESTART WITH long } | { SELECTIVITY int } | { SET DEFAULT expression } | { SET NULL } | { SET NOT NULL } }
В приведенном выше синтаксисе —
-
RESTART — команда изменяет следующее значение столбца с автоинкрементом.
-
SELECTIVITY — команда устанавливает селективность (1-100) для столбца. На основе значения селективности мы можем отобразить значение столбца.
-
SET DEFAULT — изменяет значение по умолчанию для столбца.
-
SET NULL — устанавливает столбец для разрешения NULL.
-
SET NOT NULL — устанавливает для столбца разрешение NOT NULL.
RESTART — команда изменяет следующее значение столбца с автоинкрементом.
SELECTIVITY — команда устанавливает селективность (1-100) для столбца. На основе значения селективности мы можем отобразить значение столбца.
SET DEFAULT — изменяет значение по умолчанию для столбца.
SET NULL — устанавливает столбец для разрешения NULL.
SET NOT NULL — устанавливает для столбца разрешение NOT NULL.
пример
В этом примере мы переименуем столбец таблицы tutorials_tbl из заголовка в Tutorial_Title, используя следующий запрос.
ALTER TABLE tutorials_tbl ALTER COLUMN title RENAME TO tutorial_title;
Приведенный выше запрос приводит к следующему выводу.
(0) row(s) effected
Аналогичным образом мы можем выполнить различные сценарии с помощью команды ALTER.