Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Оператор изменения структуры таблицы

Читайте также:
  1. I. Изменения капитала
  2. IaaS - это предоставление компьютерной инфраструктуры как услуги на основе концепции облачных вычислений.
  3. V. Влияние изменения цен
  4. V. Проверка и закрепление знаний столбика составленной таблицы
  5. А.5 Случайные и систематические изменения качества воды
  6. Адаптивные организационные структуры (органические).
  7. Алгоритм организации работы по изучению таблицы умножения

БАЗЫ ДАННЫХ И ЭКСПЕРТНЫЕ СИСТЕМЫ

ЛЕКЦИЯ 6

12 октября 2015 года

<ограничение таблицы>:: =

[CONSTRAINT <имя ограничения>]

{[{PRIMARY KEY | UNIQUE}

{(<имя столбца> [, …, <имя столбца>])}]

| FOREIGN KEY [(<имя столбца> [, …, <имя столбца>])]

REFERENCES <внешняя таблица> [(<имя столбца> [, …, <имя столбца>])]

[ON DELETE {CASCADE | NO ACTION}]

[ON UPDATE {CASCADE | NO ACTION}]

| CHECK (<логическое выражение>)}

Пример 1:

CREATE TABLE t1

(pk number PRIMARY KEY, // первичный ключ состоит из одного поля

c1 number, // создание двух столбцов

c2 number,

CONSTRAINT ck1 CHECK (pk > 0 and c1 > 0),

CONSTRAINT ck2 CHECK (c2 > 0)

Пример 2:

CREATE TABLE t2

(f1 varchar (20)

c5 number (6)

c6 number (10)

CONSTRAINT cl PRIMARY KEY (c5, c6))

Оператор изменения структуры таблицы

ALTER TABLE <имя таблицы>

{ADD | MODIFY

<имя столбца> <тип данных> [DEFAULT <выражение>]

[<ограничение столбца>] [, …, <ограничение столбца>]}

| {DROP COLUMN <имя столбца> | CONSTRAINT <имя ограничения>}

| {ADD | DROP <ограничение таблицы>}

Команда ALTER TABLE может:

· ADD – добавить новый столбец (обязательно с каким-нибудь типом данных), ограничение с каким-нибудь типом столбца, ограничение таблицы

· MODIFY – изменить тип данных столбца, значение по умолчанию, ограничение

· DROP – удалить столбец, ограничение столбца или таблицы

Пример 1 (добавление столбца):

ALTER TABLE t1 ADD new_field varchar (10) // указание типа данных для столбца обязательно

Пример 2 (переопределение типа данных):

ALTER TABLE t1 MODIFY new_field numeric

Пример 3 (назначение значения по умолчанию):

ALTER TABLE t1 MODIFY new_field numeric DEFAULT 10

 

Пример 4 (сделать значения в столбцы обязательными к заполнению):

ALTER TABLE t1 MODIFY new_field NOT NULL

Пример 5 (сделать проверку на ввод значений в столбец new_field):

В1: ALTER TABLE t1 MODIFY new_field CONSTRAINT c1 CHECK (new_field > 0) // как свойство столбца

В2: ALTER TABLE t1 ADD CONSTRAINT c1 CHECK (new_field > 0) // как свойство таблицы

Пример 6 (удаление ограничения таблицы):

ALTER TABLE t1 DROP CONSTRAINT c1

Пример 7 (создание первичного ключа и удаление ограничения таблицы):

В1:

ALTER TABLE t1 MODIFY new_field CONSTRAINT c2 PRIMARY KEY // CONSTRAINT может быть опущено

ALTER TABLE t1 DROP CONSTRAINT c2 // по названию

ALTER TABLE t1 DROP PRIMARY KEY // по сути

B2:

ALTER TABLE t1 ADD CONSTRAINT c3 PRIMARY KEY (new_field)// ограничение таблицы

ALTER TABLE t1 DROP PRIMARY KEY

Пример 8 (удаление столбца):

ALTER TABLE t1 DROP COLUMN new_field

Изменение свойств столбца невозможно, если:

1. Столбец участвует в ограничения PRIMARY KEY или UNIQUE

2. Столбец участвует в ограничении CHECK

3. Столбец участвует в ограничении FOREIGN KEY

4. Невозможно изменение типа данных у столбца, у которого установлено значение по умолчанию. Однако, есть исключения.

5. Нельзя удалить последний столбец в таблице

6. Нельзя удалить столбец, задействованный в каком-либо ограничении


Дата добавления: 2015-10-24; просмотров: 60 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Этнічныя меншасці ў Беларусі. Фарміраванне этнічнага складу насельніцтва Беларусі (ХІV – XVII стст.).| Дополнительная причина пожаров летом

mybiblioteka.su - 2015-2024 год. (0.006 сек.)