Ответы к некоторым упражнениям

3.1. CREATE TABLE S

(НОМЕР_ПОСТАВЩИКА CHAR(5) NOT NULL,

ФАМИЛИЯ CHAR(20),

СОСТОЯНИЕ SMALLINT,

ГОРОД CHAR(15));

S НОМЕР_ПОСТАВЩИКА ФАМИЛИЯ СОСТОЯНИЕ ГОРОД
  S1 S2 S3 S4 S5 Смит Джонс Блейк Кларк Адамс   Лондон Париж Париж Лондон Атенс
P НОМЕР_ДЕТАЛИ НАЗВАНИЕ ЦВЕТ BEС ГОРОД
  Р1 Р2 РЗ Р4 Р5 Р6 Гайка Болт Винт Винт Кулачок Блюм Красный Зеленый Голубой Красный Голубой Красный   Лондон Париж Рим Лондон Париж Лондон
J НОМЕР_ИЗДЕЛИЯ НАЗВАНИЕ ГОРОД
  J 1 J2 J3 J4 J5 J6 J7 Сортировщик Перфоратор Считыватель Консоль Сортировочно-подборочная машина Терминал Лента Париж Рим Атенс Атенс Лондон Осло Лондон
SPJ НОМЕР_ПОСТАВЩИКА НОМЕР_ ДЕТАЛИ НОМЕР_ ИЗДЕЛИЯ КОЛИЧЕСТВО
  S1 S1 S2 S2 S2 S2 S2 S2 S2 S2 S3 S3 S4 S4 S5 S5 S5 S5 S5 S5 S5 S5 S5 S5 Р1 Р1 РЗ РЗ РЗ РЗ РЗ РЗ РЗ Р5 РЗ Р4 Р6 Р6 Р2 Р2 Р5 Р5 Р6 Р1 РЗ Р4 Р5 Р6 J1 J4 J1 J2 J3 J4 J5 J6 J7 J2 J1 J2 J3 J7 J2 J4 J5 J7 J2 J4 J4 J4 J4 J4  

Рис. 3.1. База данных поставщиков, деталей, изделий

CREATE TABLE P

(НОМЕР_ДЕТАЛИ CHAR(6) NOT NULL,

НАЗВАНИЕ CHAR(20),

ЦВЕТ CHAR(7),

ВЕС SMALLINT,

ГОРОД СHAR(15));

CREATE TABLE J

(НОМЕР_ИЗДЕЛИЯ CHAR(4) NOT NULL,

НАЗВАНИЕ CHAR(10),

ГОРОД CHAR(15));

CREATE TABLE SPJ

(НОМЕР_ПОСТАВЩИКА CHAR(5) NOT NULL,

НОМЕР_ДЕТАЛИ CHAR(6) NOT NULL,

НОМЕР_ИЗДЕЛИЯ CHAR(4) NOT NULL,

КОЛИЧЕСТВО INTEGER);

3.2. CREATE UNIQUE INDEX XS ON S (НОМЕР_ПОСТАВЩИКА);

CREATE UNIQUE INDEX XP ON P (НОМЕР_ДЕТАЛИ);

CREATE UNIQUE INDEX XJ ON J (НОМЕР_ИЗДЕЛИЯ);

CREATE UNIQUE INDEX XSPJ ON SPJ (НОМЕР_ПОСТАВЩИКА.

НОМЕР_ДЕТАЛИ,

НОМЕР_ИЗДЕЛИЯ);

3.3. Достоинства индексов заключаются в следующем:

а) Они ускоряют прямой доступ, основанный на заданном значении для индексированного поля (комбинации полей). Без индекса потребовался бы последовательный просмотр.

б) Они ускоряют последовательный доступ, основанный на индексированном поле (комбинации полей). Без индекса потребовалась бы сортировка.

в) В системе DB2 индексы со спецификацией UNIQUE служат, в частности, для реализации ограничений уникальности. Недостатки индексов заключаются в следующем:

а) Они занимают пространство памяти в базе данных. В сильно индексированной базе данных это пространство легко может превысить тот объем пространства памяти, которое занимают сами данные.

б) В то время как индекс, вполне возможно, ускорит операции выборки данных, он будет вместе с тем замедлять операции обновления. Исполнение любого предложения INSERT или DELETE над индексированной таблицей или UPDATE по индексированному полю (комбинации полей) потребует сопутствующего обновления индекса.

3.4. Дела обстоят неважно. Система DB2 совсем не в такой мере обеспечивает независимость данных, в какой следовало бы.


ГЛАВА 4

МАНИПУЛИРОВАНИЕ ДАННЫМИ I:

ОПЕРАЦИИ ВЫБОРКИ ДАННЫХ


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: