Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекції для 3ОТ1.doc
Скачиваний:
10
Добавлен:
21.02.2016
Размер:
16.31 Mб
Скачать

Контрольні питання

  1. Навести характеристику SQL запитів

  2. Надати поняття принципам роботи оператора CREATE TABLE

  3. Надати поняття принципам роботи оператора DROP TABLE

АУДИТОРНЕ ЗАНЯТТЯ

Змістовий модуль 6: програмування з графами

Тема 6.7: навігація по набору даних. Мова sql. Створення довідкової системи

Лекція №58 – Робота з таблицями та індексами

План заняття

  1. Характеристика SQL запитів

  2. Характеристика оператора CREATE TABLE

  3. Характеристика оператора DROP TABLE

SQL позволяет создавать, удалять и изменять структуру таб­лиц, а также создавать и удалять индексы.

Создание таблиц осуществляется с помощью оператора CREATE TABLE, имеющего такое описание:

CREATE TABLE Имя_таблиці (Имя_поля Тип_данных,

Имя_поля Тип_дашшх

[PRIMARY KEY (Список_полей)])

Обязательно должно быть задано имя таблицы, а также имя и тип хотя бы одного поля. Для таблиц в формате Paradox также должен быть определен первичный ключ. С этой целью дополни­тельно указывается описатель PRIMARY KEY, после которого в скобках перечисляется список полей, составляющих первичный ключ. Ключевые поля должны располагаться в начале списка по­лей создаваемой таблицы.

Файлы таблицы будут размещены в каталоге БД, на который ссылается псевдоним БД, указанный в свойстве Database ком­понента Query. На самом деле в операторе CREATE TABLE ука­зывается не имя таблицы, а имя главного файла таблицы, что до­пустимо, так как эти имена совпадают. Тип таблицы определяется на основе указанного расширения имени файла: DB - для таблицы в формате Paradox (данное расширение принимается по умолча­нию), DBF - для таблиц формата dBASE и т.д.

Соответствие между типами данных языка SQL и типами дан­ных таблиц Paradox отражено в табл. 15.1.

В результате выполнения данного запроса будет создана таб­лица people. db (формат Paradox), которая содержит шесть по­лей с указанными именами и типом данных. Первичный ключ строится на основе первого поля Nom_j?ass.

Для удаления таблицы используется оператор DROP TABLE. Он имеет такой синтаксис:

DROP TABLE Имя_>габлицы

Пример удаления таблицы показан ниже:

DROP TABLE schedule.dbf

В результате выполнения данного оператора с диска будут уда­лены все файлы, относящиеся к таблице с именем schedule. Dbf.

Если указанная таблица не существует, то вызывается исключи­тельная ситуация.

Изменение структуры таблицы, то есть добавление и удаление отдельных ее полей, производится с помощью оператора ALTER TABLE. Во время выполнения данного оператора таблица должна быть неактивной, то есть ни одно из приложений не должно с ней работать. Оператор изменения структуры таблицы имеет такой формат:

ALTER TABLE Имя_таблицы

ADD Имя_поля Тип_данных, DROP Имя_поля,

ADD Имя_поля Тип_даяяых, DROP Имя_поля

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

При попытке создать поле с уже существующим именем или удалить несуществующее поле будет сгенерирована исключи­тельная ситуация.

Пусть необходимо в таблице sotr.db удалить поле Fio и добавить три новых поля Fam, Name и Otch. Это можно сделать с помощью оператора ALTER TABLE следующего вида:

ALTER TABLE sotr.db ADD Fam CHAR(20), ADD Name CHAR(20), ADD Otch CHAR(20), DROP Fio

Индекс создается с помощью оператора CREATE INDEX, ко­торый имеет следующий синтаксис:

CREATE INDEX Имя_индекса ON Имя_таблицы

(Имя_поля, ... , Имя_поля)

В результате его выполнения создается индекс с определен­ным именем на основе указанных полей данной таблицы.

Оператор CREATE INDEX следующего вида создает индекс по полям Tovar и Price таблицы shop.db.

CREATE INDEX tovprind ON shop.db

(Tovar, Price)

Для удаления индекса используется оператор DROP INDEX, который в самом общем виде записывается следующим образом:

DROP INDEX

Имя_таблицы.Имя_индекса

Если необходимо удалить первичный индекс таблицы в формате Paradox, то оператор DROP INDEX принимает следующий вид:

DROP INDEX

Имя_таблицы.PRIMARY

В приведенном ниже примере при помощи оператора DROP INDEX осуществляется удаление индекса с именем deparrind таблицы reys.db.

DROP INDEX

‘reys.db’.deparrind

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

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