Учебники

База данных H2 — Изменить

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.