Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SQL(лекции).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
163.33 Кб
Скачать

Глава 2. Использование субд access

Каждый индекс имеет уникальное в пределах данной таблицы имя. Для создания простого индекса используется фраза (помещает­ся за именем поля):

CONSTRAINT имя индекса {PRIMARY KEY|UNIQUE| REFERENCES внешняя таблица [(внешнее поле)]}

Директива создания составного индекса (помешается в любом месте после определения его элементов):

CONSTRAINT имя {PRIMARY KEY (ключевое 1[, ключевое2 [, ...]]) IUNIQUE (уникальное 1[, ...]]) | FOREIGN KEY (ссылкаЦ, ссылка2[, ...]]) REFERENCES внешняя таблица [(внешнее полеЦ, внешнее поле2[, ...]])]}

Служебные слова:

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

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

FOREIGN KEY — внешний ключ для связи с другими таблица­ми (может состоять из нескольких полей);

REFERENCES — ссылка на внешнюю таблицу.

Пример 2.1.

CREATE TABLE Студент

([Имя] TEXT,

[Фамилия] TEXT,

[Дата рождения] DATETIME,

CONSTRAINT Адр UNIQUE ([Имя]), [Фамилия], [Дата рождения]))

В результате выполнения запроса будет создана таблица СТУДЕНТ, в составе которой:

• два текстовых поля: Имя, Фамилия;

• одно поле типа дата/время — Дата рождения.

Будет создан составной индекс с именем Адр по значениям ука­занных полей, индекс имеет уникальное значение, в таблице не мо­жет быть двух записей с одинаковыми значениями полей, образую­щих индекс.

2. Изменение структуры таблиц. При необходимости можно из­менить структуру таблицы:

• удалить существующие поля;

• добавить новые поля;

• создать или удалить индексы.

2.8. Обработка данных в базе

65

Все указанные действия затрагивают одновременно только одно поле или один индекс:

ALTER TABLE таблица

ADD{[COLUMN]nojie Tnn[(pa3Mep)][CONSTRAINT индекс]

CONSTRAINT составной индекс}]

DROP {[COLUMN] поле i CONSTRAINT имя индекса}}

Опция ADD обеспечивает добавление поля, опция DROP — удаление поля таблицы, добавление опции CONSTRAINT означает подобные действия для индексов таблицы.

Пример 2.2.

ALTER TABLE Студент ADD COLUMN |Группа] ТЕХТ(5)

Для создания нового индекса для существующей таблицы мож­но использовать также команду:

CREATE [UNIQUE] INDEX индекс

ON таблица (поле[, ...])

[WITH {PRIMARY|DISALLOW NULL|IGNORE NULL}]

Фраза WITH обеспечивает наложение условий на значения по­лей, включенных в индекс:

DISALLOW NULL — запретить пустые значения в индексиро­ванных полях новых записей;

IGNORE NULL — включать в индекс записи, имеющие пустые значения в индексированных полях.

Пример 2.3.

CREATE INDEX Гр ON Студент([группа]) WITH DISALLOW NULL

3. Удаление таблицы. Для удаления таблицы (одновременно и структуры, и данных) используется команда:

DROP TABLE имя таблицы

Для удаления только индекса таблицы (сами данные не разру­шаются) выполняется команда:

DROP INDEX имя индекса ON имя таблицы Пример 2.4.

DROP INDEX Адр ON Студент

— удален только индекс Адр;

DROP TABLE Студент

— удалена вся таблица.

66

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]