Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
26
Добавлен:
27.04.2015
Размер:
433.66 Кб
Скачать

PRIMARY KEY — определение первичного ключа на уровне одного столбца (т. е. первичный ключ будет состоять только из значений одного столбца).

UNIQUE — указание на создание для столбца ограничения целостности UNIQUE (уникальность каждого отдельного значения в столбце).

FOREIGN KEY ... REFERENCES — указание на то, что столбец будет служить внешним ключом для таблицы, имя которой задается с помощью параметра <имя_главной_таблицы>.

ON DELETE {CASCADE | NO ACTION} - эти ключевые слова определяют действия, предпринимаемые при удалении строки из главной таблицы.

ON UPDATE {CASCADE | NO ACTION} - эти ключевые слова определяют действия, предпринимаемые при модификации строки главной таблицы.

CHECK — ограничение целостности, инициирующее контроль вводимых в столбец (или столбцы) значений;

CREATE TABLE Учебный_план (ID_План INTEGER NOT NULL,

ID_Дисциплина

INTEGER NOT NULL,

Семестр

INTEGER NOT NULL,

Количество_часов

INTEGER,

ID_Преподаватель

INTEGER,

PRIMARY KEY

(ID_План),

FOREIGN KEY (ID_Дисциплина)

REFERENCES

Дисциплины

FOREIGN KEY (ID_Преподаватель) REFERENCES

Кадровый_состав

CHECK ((Семестр >= 1) OR (Семестр <= 10)))

Изменение структуры таблицы — ALTER TABLE

Основные режимы использования команды :

добавление столбца;

удаление столбца;

модификация столбца;

изменение, добавление и удаление ограничений (первичных и внешних ключей, значений по умолчанию).

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

[ALTER COLUMN <имя_столбца> [SET DEFAULT <выражение>]|

[DROP DEFAULT]]

|[ADD <определение_столбца>]

|[DROP COLUMN <имя_столбца> [CASCADE]|

[RESTRICT]]

|[ADD [<определение_первичного_ключа>]| [<определение_внешнего_ключа>]| [<условие_уникальности>]|[<условие_на_значение>]]

|[DROP CONSTRAINT <имя_ограничения>

[CASCADE]|[RESTRICT]]

Добавим, например, в таблицу «Студенты» столбец Год_поступления следующим образом:

ALTER TABLE Студенты

ADD Год_поступления INTEGER NOT NULL DEFAULT YEAR(GETDATE())

Пример модификации столбца «Номер_группы» таблицы «Студенты» (тип данных INTEGER заменяется на CHAR):

ALTER TABLE Студенты

ALTER COLUMN Номер_группы CHAR(6) NOT NULL

Удаление из таблицы «Студенты» столбца «Год_поступления»:

ALTER TABLE Студенты

DROP COLUMN Год_поступления

Добавление значения по умолчанию для столбца

Номер_группы:

ALTER TABLE Студент

ADD CONSTRAINT DEF_Номер_группы DEFAULT 1 FOR Номер_группы

Удаление таблиц — DROP TABLE

DROP TABLE <имя_таблииы>

Но невозможно удалить таблицу, если на нее с помощью ограничения целостности FOREIGN KEY ссылается другая таблица.

Добавление данных —INSERT

В простейшем случае вставка данных с помощью команды INSERT предполагает использование конструкции :

INSERT [INTO] <имя_таблицы>

[(<список_колонок>)] VALUES (<список_значений>)

Пример:

INSERT INTO Student VALUES (10, Иванов, Иван, 143,1500, 3) – вводится вся строка,

или выборочно

INSERT INTO Student (Kod, Ocenka) VALUES (3, 10)

Оператор удаления данных DELETE

DELETE FROM имя_таблицы [WHERE условия_отбора]

DELETE FROM Student – удаление всех строк

DELETE FROM Student

WHERE Fam = 'Иванов '