Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Материалы по БД / 8600_бд - Лабораторная работа2.doc
Скачиваний:
49
Добавлен:
13.02.2016
Размер:
112.64 Кб
Скачать

Пример выполнения работы.

  1. Схема БД состоит из четырех отношений:

Product(market, model, type)

PC(code, model, speed, ram, hd, cd, price)

Laptop(code, model, speed, ram, hd, screen, price)

Printer(code, model, color, type, price)

Используя операции реляционной алгебры построить следующие запросы:

  1. Найдите номер модели, скорость и размер жесткого диска для всех ПК стоимостью менее 500 $. Вывести: model,speed,hd.

  2. Получить информацию о ценах на лазерные принтеры.

  3. Вывести информацию о ПК-блокнотах, имеющих стоимость ниже заданной.

  4. Отыскать производителей цветных лазерных принтеров.

  5. Какие модели ПК-блокнотов имеются в базе

  6. Получить информацию о ПК и ПК-блокнотах, имеющих одинаковую цену.

2. Для перечисленных выше запросов создайте эквивалентные команды в реляционном исчислении кортежей и доменов.

3. Объясните какие правила целостности сущностей и ссылочной целостности могут быть применены к этим отношениям.

Ход работы:

  1. Найдите номер модели, скорость и размер жесткого диска для всех ПК стоимостью менее 500 $. Вывести: model, speed, hd.

П model, speed, hd price < 500 (PC) );

Range of P is PC

{P.model, P.speed, P.hd | P.price < 500 };

{ model, speed, hd | price [ PC(model,speed,hd,price)^ price < 500 ] }

  1. Получить информацию о ценах на лазерные принтеры:

П model, color, price type = Laser (Printer) );

Range of P is Printer

{ P.model, P.color, P. price | P.type = Laser };

{ model, color, price | type[ Printer(model, color, price, type) ^ type = Laser ] }

  1. Вывести информацию о ПК-блокнотах, имеющих стоимость ниже заданной

σ price < x (Laptop) ;

Range of L is Laptop

{ L | L.price < X };

{ model, speed, ram, hd, screen, price | price

[Laptop (model, speed, ram, hd, screen, price) ^ price < X ] }

  1. Отыскать производителей цветных лазерных принтеров

П market (Product Natural-join Printer ) Printer.Color = ”y” ^ ^Printer.Type = Laser ;

Range of P is Product

Range of A is Printer

{ P.market | P.type=Printer^A.Type=Laser^A.Color=“y” };

{ market | (type Product(type, market) ^ Product .type = Printer) ^

(type,color Printer (type, color) ^ Printer .type=Laser ^ Printer .Color= “y” )};

  1. Какие модели ПК-блокнотов имеются в базе

П model (Laptop);

Range of L is Laptop

{L.model | L };

{ model | Laptop(model, speed, ram, hd, screen, price) };

  1. Получить информацию о ПК и ПК-блокнотах, имеющих одинаковую цену

σ PC.Model, Laptop.Model (PC × Laptop) PC.Price = Laptop.Price ;

Range of P is PC

Range of L is Laptop

{P.model, L.model | P.price = L. price };

{PC. model, Laptop. model | (price PC(model, price))^

(price Laptop(model, price) ) ^ PC.price = Laptop .price};

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

- Product.Model, Printer.Code, Laptop.Code, PC.Code => PK;

Правило ссылочной целостности выполняется для приведённых отношений и заключается в соответствии внешних ключей (FK) каждого из отношений (Printer. Model, Laptop. Model, PC. Model => FK)значению первичного ключа (PK) в базовом отношении ( Product.Model ).

Соседние файлы в папке Материалы по БД