Розробка бази даних та застосування для Інтернет-магазину відеотехніки

Дослідження підсистем створення облікової анкети на сайті, обробки замовлення та контролю платіжної системи. Проектування концептуальної, логічної і фізичної моделей даних. Визначення в них атрибутів сутностей, типу та розміру. Генерація моделей до СКБД.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 30.01.2013
Размер файла 1,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

-- ERwin Builtin Trigger

-- UPDATE trigger on Internet_store

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Internet_store Warehouse on parent update restrict */

/* ERWIN_RELATION:CHECKSUM="0001039e", PARENT_OWNER="", PARENT_TABLE="Internet_store"

CHILD_OWNER="", CHILD_TABLE="Warehouse"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_1", FK_COLUMNS="ID_store" */

IF

/* %JoinPKPK(:%Old,:%New," <> "," OR ") */

:old.ID_store <> :new.ID_store

THEN

SELECT count(*) INTO NUMROWS

FROM Warehouse

WHERE

/* %JoinFKPK(Warehouse,:%Old," = "," AND") */

Warehouse.ID_store = :old.ID_store;

IF (NUMROWS > 0)

THEN

raise_application_error(

-20005,

'Cannot update Internet_store because Warehouse exists.'

);

END IF;

END IF;

-- ERwin Builtin Trigger

END;

CREATE TRIGGER tI_Ord BEFORE INSERT ON Ord for each row

-- ERwin Builtin Trigger

-- INSERT trigger on Ord

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Good Ord on child insert restrict */

/* ERWIN_RELATION:CHECKSUM="0001cbab", PARENT_OWNER="", PARENT_TABLE="Good"

CHILD_OWNER="", CHILD_TABLE="Ord"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_4", FK_COLUMNS="ID_good" */

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(:%New,Good," = "," AND") */

:new.ID_good = Good.ID_good;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20002,

'Cannot insert Ord because Good does not exist.'

);

END IF;

/* ERwin Builtin Trigger */

/* Orderer Ord on child insert restrict */

/* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Orderer"

CHILD_OWNER="", CHILD_TABLE="Ord"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_5", FK_COLUMNS="N_S_ord" */

SELECT count(*) INTO NUMROWS

FROM Orderer

WHERE

/* %JoinFKPK(:%New,Orderer," = "," AND") */

:new.N_S_ord = Orderer.N_S_ord;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20002,

'Cannot insert Ord because Orderer does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tD_Ord AFTER DELETE ON Ord for each row

-- ERwin Builtin Trigger

-- DELETE trigger on Ord

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Ord Ord_del on parent delete restrict */

/* ERWIN_RELATION:CHECKSUM="00010cd1", PARENT_OWNER="", PARENT_TABLE="Ord"

CHILD_OWNER="", CHILD_TABLE="Ord_del"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_7", FK_COLUMNS="ID_ordering""Summ""N_S_ord""Delivery" */

SELECT count(*) INTO NUMROWS

FROM Ord_del

WHERE

/* %JoinFKPK(Ord_del,:%Old," = "," AND") */

Ord_del.ID_ordering = :old.ID_ordering AND

Ord_del.Summ = :old.Summ AND

Ord_del.N_S_ord = :old.N_S_ord AND

Ord_del.Delivery = :old.Delivery;

IF (NUMROWS > 0)

THEN

raise_application_error(

-20001,

'Cannot delete Ord because Ord_del exists.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tU_Ord AFTER UPDATE ON Ord for each row

-- ERwin Builtin Trigger

-- UPDATE trigger on Ord

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Ord Ord_del on parent update restrict */

/* ERWIN_RELATION:CHECKSUM="00030f78", PARENT_OWNER="", PARENT_TABLE="Ord"

CHILD_OWNER="", CHILD_TABLE="Ord_del"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_7", FK_COLUMNS="ID_ordering""Summ""N_S_ord""Delivery" */

IF

/* %JoinPKPK(:%Old,:%New," <> "," OR ") */

:old.ID_ordering <> :new.ID_ordering

THEN

SELECT count(*) INTO NUMROWS

FROM Ord_del

WHERE

/* %JoinFKPK(Ord_del,:%Old," = "," AND") */

Ord_del.ID_ordering = :old.ID_ordering AND

Ord_del.Summ = :old.Summ AND

Ord_del.N_S_ord = :old.N_S_ord AND

Ord_del.Delivery = :old.Delivery;

IF (NUMROWS > 0)

THEN

raise_application_error(

-20005,

'Cannot update Ord because Ord_del exists.'

);

END IF;

END IF;

/* ERwin Builtin Trigger */

/* Good Ord on child update restrict */

/* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Good"

CHILD_OWNER="", CHILD_TABLE="Ord"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_4", FK_COLUMNS="ID_good" */

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(:%New,Good," = "," AND") */

:new.ID_good = Good.ID_good;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20007,

'Cannot update Ord because Good does not exist.'

);

END IF;

/* ERwin Builtin Trigger */

/* Orderer Ord on child update restrict */

/* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Orderer"

CHILD_OWNER="", CHILD_TABLE="Ord"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_5", FK_COLUMNS="N_S_ord" */

SELECT count(*) INTO NUMROWS

FROM Orderer

WHERE

/* %JoinFKPK(:%New,Orderer," = "," AND") */

:new.N_S_ord = Orderer.N_S_ord;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20007,

'Cannot update Ord because Orderer does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tI_Ord_del BEFORE INSERT ON Ord_del for each row

-- ERwin Builtin Trigger

-- INSERT trigger on Ord_del

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Ord Ord_del on child insert restrict */

/* ERWIN_RELATION:CHECKSUM="000246d2", PARENT_OWNER="", PARENT_TABLE="Ord"

CHILD_OWNER="", CHILD_TABLE="Ord_del"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_7", FK_COLUMNS="ID_ordering""Summ""N_S_ord""Delivery" */

SELECT count(*) INTO NUMROWS

FROM Ord

WHERE

/* %JoinFKPK(:%New,Ord," = "," AND") */

:new.ID_ordering = Ord.ID_ordering AND

:new.Summ = Ord.Summ AND

:new.N_S_ord = Ord.N_S_ord AND

:new.Delivery = Ord.Delivery;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20002,

'Cannot insert Ord_del because Ord does not exist.'

);

END IF;

/* ERwin Builtin Trigger */

/* Courier Ord_del on child insert restrict */

/* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Courier"

CHILD_OWNER="", CHILD_TABLE="Ord_del"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_8", FK_COLUMNS="N_S_cour""Phone_cour""ID_courier" */

SELECT count(*) INTO NUMROWS

FROM Courier

WHERE

/* %JoinFKPK(:%New,Courier," = "," AND") */

:new.ID_courier = Courier.ID_courier AND

:new.N_S_cour = Courier.N_S_cour AND

:new.Phone_cour = Courier.Phone_cour;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20002,

'Cannot insert Ord_del because Courier does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tU_Ord_del AFTER UPDATE ON Ord_del for each row

-- ERwin Builtin Trigger

-- UPDATE trigger on Ord_del

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Ord Ord_del on child update restrict */

/* ERWIN_RELATION:CHECKSUM="000239d1", PARENT_OWNER="", PARENT_TABLE="Ord"

CHILD_OWNER="", CHILD_TABLE="Ord_del"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_7", FK_COLUMNS="ID_ordering""Summ""N_S_ord""Delivery" */

SELECT count(*) INTO NUMROWS

FROM Ord

WHERE

/* %JoinFKPK(:%New,Ord," = "," AND") */

:new.ID_ordering = Ord.ID_ordering AND

:new.Summ = Ord.Summ AND

:new.N_S_ord = Ord.N_S_ord AND

:new.Delivery = Ord.Delivery;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20007,

'Cannot update Ord_del because Ord does not exist.'

);

END IF;

/* ERwin Builtin Trigger */

/* Courier Ord_del on child update restrict */

/* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Courier"

CHILD_OWNER="", CHILD_TABLE="Ord_del"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_8", FK_COLUMNS="N_S_cour""Phone_cour""ID_courier" */

SELECT count(*) INTO NUMROWS

FROM Courier

WHERE

/* %JoinFKPK(:%New,Courier," = "," AND") */

:new.ID_courier = Courier.ID_courier AND

:new.N_S_cour = Courier.N_S_cour AND

:new.Phone_cour = Courier.Phone_cour;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20007,

'Cannot update Ord_del because Courier does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tD_Orderer AFTER DELETE ON Orderer for each row

-- ERwin Builtin Trigger

-- DELETE trigger on Orderer

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Orderer Ord on parent delete restrict */

/* ERWIN_RELATION:CHECKSUM="0000c238", PARENT_OWNER="", PARENT_TABLE="Orderer"

CHILD_OWNER="", CHILD_TABLE="Ord"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_5", FK_COLUMNS="N_S_ord" */

SELECT count(*) INTO NUMROWS

FROM Ord

WHERE

/* %JoinFKPK(Ord,:%Old," = "," AND") */

Ord.N_S_ord = :old.N_S_ord;

IF (NUMROWS > 0)

THEN

raise_application_error(

-20001,

'Cannot delete Orderer because Ord exists.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tU_Orderer AFTER UPDATE ON Orderer for each row

-- ERwin Builtin Trigger

-- UPDATE trigger on Orderer

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Orderer Ord on parent update restrict */

/* ERWIN_RELATION:CHECKSUM="0000ebc7", PARENT_OWNER="", PARENT_TABLE="Orderer"

CHILD_OWNER="", CHILD_TABLE="Ord"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_5", FK_COLUMNS="N_S_ord" */

IF

/* %JoinPKPK(:%Old,:%New," <> "," OR ") */

:old.N_S_ord <> :new.N_S_ord

THEN

SELECT count(*) INTO NUMROWS

FROM Ord

WHERE

/* %JoinFKPK(Ord,:%Old," = "," AND") */

Ord.N_S_ord = :old.N_S_ord;

IF (NUMROWS > 0)

THEN

raise_application_error(

-20005,

'Cannot update Orderer because Ord exists.'

);

END IF;

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tI_Players BEFORE INSERT ON Players for each row

-- ERwin Builtin Trigger

-- INSERT trigger on Players

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Good Players on child insert restrict */

/* ERWIN_RELATION:CHECKSUM="0001219d", PARENT_OWNER="", PARENT_TABLE="Товар"

CHILD_OWNER="", CHILD_TABLE="Players"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="is_a", FK_COLUMNS="ID_good""Producer""Model""Price""Others" */

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(:%New,Good," = "," AND") */

:new.ID_good = Good.ID_good AND

:new.Price = Good.Price AND

:new.Producer = Good.Producer AND

:new.Model = Good.Model AND

:new.Others = Good.Others;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20002,

'Cannot insert Players because Good does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tU_Players AFTER UPDATE ON Players for each row

-- ERwin Builtin Trigger

-- UPDATE trigger on Players

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Good Players on child update restrict */

/* ERWIN_RELATION:CHECKSUM="0001232a", PARENT_OWNER="", PARENT_TABLE="Товар"

CHILD_OWNER="", CHILD_TABLE="Players"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="is_a", FK_COLUMNS="ID_good""Producer""Model""Price""Others" */

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(:%New,Good," = "," AND") */

:new.ID_good = Good.ID_good AND

:new.Price = Good.Price AND

:new.Producer = Good.Producer AND

:new.Model = Good.Model AND

:new.Others = Good.Others;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20007,

'Cannot update Players because Good does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

CREATE TRIGGER tI_Proectors BEFORE INSERT ON Proectors for each row

-- ERwin Builtin Trigger

-- INSERT trigger on Proectors

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Good Proectors on child insert restrict */

/* ERWIN_RELATION:CHECKSUM="00011a67", PARENT_OWNER="", PARENT_TABLE="Товар"

CHILD_OWNER="", CHILD_TABLE="Proectors"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="is_a", FK_COLUMNS="ID_good""Producer""Model""Price""Others" */

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(:%New,Good," = "," AND") */

:new.ID_good = Good.ID_good AND

:new.Price = Good.Price AND

:new.Producer = Good.Producer AND

:new.Model = Good.Model AND

:new.Others = Good.Others;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20002,

'Cannot insert Proectors because Good does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tU_Proectors AFTER UPDATE ON Proectors for each row

-- ERwin Builtin Trigger

-- UPDATE trigger on Proectors

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Good Proectors on child update restrict */

/* ERWIN_RELATION:CHECKSUM="00011d9b", PARENT_OWNER="", PARENT_TABLE="Товар"

CHILD_OWNER="", CHILD_TABLE="Proectors"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="is_a", FK_COLUMNS="ID_good""Producer""Model""Price""Others" */

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(:%New,Good," = "," AND") */

:new.ID_good = Good.ID_good AND

:new.Price = Good.Price AND

:new.Producer = Good.Producer AND

:new.Model = Good.Model AND

:new.Others = Good.Others;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20007,

'Cannot update Proectors because Good does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tI_TV_monit BEFORE INSERT ON TV_monit for each row

-- ERwin Builtin Trigger

-- INSERT trigger on TV_monit

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Good TV_monit on child insert restrict */

/* ERWIN_RELATION:CHECKSUM="00012519", PARENT_OWNER="", PARENT_TABLE="Товар"

CHILD_OWNER="", CHILD_TABLE="TV_monit"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="is_a", FK_COLUMNS="ID_good""Producer""Model""Price""Others" */

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(:%New,Good," = "," AND") */

:new.ID_good = Good.ID_good AND

:new.Price = Good.Price AND

:new.Producer = Good.Producer AND

:new.Model = Good.Model AND

:new.Others = Good.Others;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20002,

'Cannot insert TV_monit because Good does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tU_TV_monit AFTER UPDATE ON TV_monit for each row

-- ERwin Builtin Trigger

-- UPDATE trigger on TV_monit

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Good TV_monit on child update restrict */

/* ERWIN_RELATION:CHECKSUM="00012c81", PARENT_OWNER="", PARENT_TABLE="Товар"

CHILD_OWNER="", CHILD_TABLE="TV_monit"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="is_a", FK_COLUMNS="ID_good""Producer""Model""Price""Others" */

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(:%New,Good," = "," AND") */

:new.ID_good = Good.ID_good AND

:new.Price = Good.Price AND

:new.Producer = Good.Producer AND

:new.Model = Good.Model AND

:new.Others = Good.Others;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20007,

'Cannot update TV_monit because Good does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tI_Warehouse BEFORE INSERT ON Warehouse for each row

-- ERwin Builtin Trigger

-- INSERT trigger on Warehouse

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Internet_store Warehouse on child insert restrict */

/* ERWIN_RELATION:CHECKSUM="0000f534", PARENT_OWNER="", PARENT_TABLE="Internet_store"

CHILD_OWNER="", CHILD_TABLE="Warehouse"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_1", FK_COLUMNS="ID_store" */

SELECT count(*) INTO NUMROWS

FROM Internet_store

WHERE

/* %JoinFKPK(:%New,Internet_store," = "," AND") */

:new.ID_store = Internet_store.ID_store;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20002,

'Cannot insert Warehouse because Internet_store does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tD_Warehouse AFTER DELETE ON Warehouse for each row

-- ERwin Builtin Trigger

-- DELETE trigger on Warehouse

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Warehouse Good on parent delete restrict */

/* ERWIN_RELATION:CHECKSUM="0000ca01", PARENT_OWNER="", PARENT_TABLE="Warehouse"

CHILD_OWNER="", CHILD_TABLE="Good"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_2", FK_COLUMNS="ID_warehouse" */

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(Good,:%Old," = "," AND") */

Good.ID_warehouse = :old.ID_warehouse;

IF (NUMROWS > 0)

THEN

raise_application_error(

-20001,

'Cannot delete Warehouse because Good exists.'

);

END IF;

-- ERwin Builtin Trigger

END;

/

CREATE TRIGGER tU_Warehouse AFTER UPDATE ON Warehouse for each row

-- ERwin Builtin Trigger

-- UPDATE trigger on Warehouse

DECLARE NUMROWS INTEGER;

BEGIN

/* ERwin Builtin Trigger */

/* Warehouse Good on parent update restrict */

/* ERWIN_RELATION:CHECKSUM="00020a7b", PARENT_OWNER="", PARENT_TABLE="Warehouse"

CHILD_OWNER="", CHILD_TABLE="Good"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_2", FK_COLUMNS="ID_warehouse" */

IF

/* %JoinPKPK(:%Old,:%New," <> "," OR ") */

:old.ID_warehouse <> :new.ID_warehouse

THEN

SELECT count(*) INTO NUMROWS

FROM Good

WHERE

/* %JoinFKPK(Good,:%Old," = "," AND") */

Good.ID_warehouse = :old.ID_warehouse;

IF (NUMROWS > 0)

THEN

raise_application_error(

-20005,

'Cannot update Warehouse because Good exists.'

);

END IF;

END IF;

/* ERwin Builtin Trigger */

/* Internet_store Warehouse on child update restrict */

/* ERWIN_RELATION:CHECKSUM="00000000", PARENT_OWNER="", PARENT_TABLE="Internet_store"

CHILD_OWNER="", CHILD_TABLE="Warehouse"

P2C_VERB_PHRASE="", C2P_VERB_PHRASE="",

FK_CONSTRAINT="R_1", FK_COLUMNS="ID_store" */

SELECT count(*) INTO NUMROWS

FROM Internet_store

WHERE

/* %JoinFKPK(:%New,Internet_store," = "," AND") */

:new.ID_store = Internet_store.ID_store;

IF (

/* %NotnullFK(:%New," IS NOT NULL AND") */

NUMROWS = 0

)

THEN

raise_application_error(

-20007,

'Cannot update Warehouse because Internet_store does not exist.'

);

END IF;

-- ERwin Builtin Trigger

END;

Размещено на Allbest.ru


Подобные документы

  • Основні підходи до проектування баз даних. Опис сайту Інтернет-магазину, характеристика його підсистем для обробки анкет і запитів користувачів. Розробка концептуальної, інфологічної, даталогічної, фізичної моделей даних. Побудова ER-моделі в CASE-засоби.

    курсовая работа [2,3 M], добавлен 01.02.2013

  • Системний аналіз бази даних за вхідною та вихідною документацією, визначення сутностей, атрибутів, зв’язків. Створення логічної моделі бази даних із застосуванням нормалізації, алгоритм її роботи. Розробка програмного забезпечення та інтерфейсу СУБД.

    курсовая работа [946,8 K], добавлен 02.07.2015

  • Специфікація вимог для кожного з двох користувачів. Концептуальне проектування бази даних. Визначення типів сутностей та зв’язків, доменів. Перетворення концептуальної моделі даних у логічну, визначення набору відношень, підтримки цілісності даних.

    курсовая работа [55,1 K], добавлен 15.03.2015

  • Розробка бази даних для меблевої фірми. Обстеження і аналіз предметної області та побудова концептуальної, логічної та фізичної моделі цієї бази даних. Використання мови програмування Visual Basic при написанні програмного коду, що обслуговує базу даних.

    курсовая работа [1,4 M], добавлен 24.10.2010

  • Проектування бази даних предметної області "Магазин будівельних матеріалів". Аналіз сукупності вхідних і вихідних даних, шляхи удосконалення інформаційної системи обліку товару. Організація інформаційної бази, розробка логічної і фізичної моделі.

    курсовая работа [559,2 K], добавлен 09.05.2016

  • Розробка концептуальної і фізичної моделей бази даних по обліку концертних заходів, організаторів, артистів та призерів конкурсів. Код запиту на створення бази даних. Загальні види запитів в інформаційній системі. Розробка програмного коду головної форми.

    курсовая работа [1,5 M], добавлен 11.12.2011

  • Аналіз відомих підходів до проектування баз даних. Ієрархічна, мережева та реляційна моделі представлення даних, їх особливості. Концептуальне проектування: приклад документів, побудова ER-діаграми, модель "сутність-зв'язок". Побудова фізичної моделі.

    курсовая работа [541,5 K], добавлен 29.01.2013

  • Концептуальна модель бази даних, визначення зв’язків між ними, атрибутів сутностей їх доменів. Створення ORM source model та Database model diagram для бази даних "Автотранспортне підприємство". Генерування ddl-скрипта для роботи в СУБД SQL-Server.

    курсовая работа [47,3 K], добавлен 17.10.2013

  • Розробка програми для автоматизованого розрахунку продажів у крамниці спорттоварів. Розробка концептуальної та логічної моделей бази даних. Автоматизація обробки інформації. Ядро програмного прикладного забезпечення. Розробка візуального інтерфейсу.

    курсовая работа [2,3 M], добавлен 26.12.2014

  • Визначення мети створення бази даних магазину та таблиць, які вона повинна містити. Розгляд видів полів та ключів таблиць. Створення запитів, форм, звітів, макросів та модулів. Вибір системи управління базами даних. Реалізація моделі у Microsoft Access.

    курсовая работа [3,8 M], добавлен 20.07.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.