Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Контрольная работа по "Сетевые базы данных"

Автор:   •  Октябрь 3, 2018  •  Контрольная работа  •  1,088 Слов (5 Страниц)  •  543 Просмотры

Страница 1 из 5

Федеральное агентство связи

Сибирский Государственный Университет Телекоммуникаций и Информатики

Межрегиональный центр переподготовки специалистов

Контрольная работа

По дисциплине: Сетевые базы данных

                                   

Выполнил:

Группа:

Вариант:

     

Проверил: ___________________

Новосибирск, 2018 г

Задание

Общая часть задания

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

Для одной из таблиц разработать триггер для обеспечения дополнительных действий при изменение данных таблицы (см. свой вариант задания).

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

Создать пакет PL/SQL, содержащий процедуру начального заполнения таблиц данными (по 5-7 записей в таблице) и процедуру очистки таблиц (удаления записей).

Добавить в пакет процедуру (см. свой вариант задания) изменения данных в таблицах. Значения изменяемых данных должны передаваться в процедуру как параметры.

В процедурах предусмотреть обработку исключений.

Обеспечить подтверждение транзакций при их успешном выполнении и откат - в случае возникновения исключительной ситуации.

Варианты задания на выполнение контрольной работы

9. Поместить в таблицы информацию об Автомобильных фирмах и Странах. Каждая фирма может иметь офисы в нескольких странах. Фирмы должны иметь номер, наименование и страну принадлежности. Страны должны иметь номер, наименование и число выпускаемых автомобилей. Процедура должна изменять число выпускаемых в каждой стране автомобилей для фирмы с максимальным номером, кратным трем; величину изменения передавать в параметре процедуры. Триггер должен разрешать изменение только собственнику таблицы. Включить в пакет еще одну процедуру, которая выводит суммарное количество выпускаемых автомобилей заданная в параметре фирма, а также страны, где она имеет свои офисы. 

Решение

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

--таблица фирм

create table firms (

  id integer,

  fname varchar2(150),

  fcounry varchar2(100),

  constraint firms_pk primary key (id)

);

/

--таблица стран

create table country (

  id integer,

  cname varchar2(100),

  countcar integer,

  idfirm integer,

  constraint country_pk primary key (id)

);

/

--создаем вторичный ключ

alter table country add constraint country_fk foreign key (idfirm) references firms(id);

/

--последовательности

create sequence firms_seq increment by 1 start with 1;

/

create sequence country_seq increment by 1 start with 1;

[pic 1]

2.Создадим представление для отображения части данных из таблиц

--представление

create or replace view showdata as

select f.fname, c.cname, c.countcar from firms f, country c where f.id = c.idfirm;

/

[pic 2]

3. Создадим пакет и процедуры в нем

Объявим пакет и список процедур

--заколовок пакета

create or replace package kon_pack as

    procedure init_data;

    procedure del_data;

    procedure change_count_car(n integer);

    procedure show_scar_countrys(firm_name varchar2);

end kon_pack;

/

[pic 3]

Теперь опишем тело пакета

--тело пакета

create or replace package body kon_pack as

    procedure init_data as

    begin

   

    --create firms

    insert into firms values (firms_seq.nextval, 'BMW', 'Germany');

    insert into firms values (firms_seq.nextval, 'Honda', 'Japan');

    insert into firms values (firms_seq.nextval, 'Ford', 'USA');

    insert into firms values (firms_seq.nextval, 'Daewoo', 'South Korean');

    insert into firms values (firms_seq.nextval, 'Mazda', 'Japan');

   

...

Скачать:   txt (9.4 Kb)   pdf (297.1 Kb)   docx (78.1 Kb)  
Продолжить читать еще 4 страниц(ы) »
Доступно только на Essays.club