Проектирование многопользовательской информационной системы "Университетская библиотека"
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
RENCES ПреподавателиDELETE NO ACTIONUPDATE NO ACTIONTABLE Пользование_библиотекой3
// Изменение таблицы Пользование_библиотекой3
ADD FOREIGN KEY (Шифр)
REFERENCES ЭкземплярDELETE NO ACTIONUPDATE NO ACTIONTABLE Сотрудники_библиотеки
// Изменение таблицы Сотрудники_библиотеки
ADD FOREIGN KEY (Номер_отдела)
REFERENCES ОтделыDELETE NO ACTIONUPDATE NO ACTIONTABLE Списанные_книги
// Изменение таблицы Списанные_книги
ADD FOREIGN KEY (Шифр)
REFERENCES ЭкземплярDELETE NO ACTIONUPDATE NO ACTIONTABLE Экземпляр
// Изменение таблицы ЭкземплярFOREIGN KEY (ISBN)КнигаDELETE NO ACTIONUPDATE NO ACTION
TABLE Экземпляр
// Изменение таблицы Экземпляр
ADD FOREIGN KEY (Номер_отдела)
REFERENCES ОтделыDELETE NO ACTIONUPDATE NO ACTIONtrigger tD_Заказы on Заказы for DELETE as
// Создание триггера на удаление из таблицы Заказы
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* DELETE trigger on Заказы */@errno int,
@errmsg varchar(255)
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Книга Заказы ON CHILD DELETE NO ACTION */exists (select * from deleted, Книга
/* deleted.ISBN = Книга.ISBN */.ISBN = Книга.ISBN andexists (* from Заказы
/* Заказы.ISBN = Книга.ISBN */
Заказы.ISBN = Книга.ISBN
)
)@errno = 30010,
@errmsg = Cannot DELETE last Заказы because Книга exists. error
end
// Создание триггера на удаление из таблицы Преподаватели
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Преподаватели Делают Заказы ON CHILD DELETE NO ACTION */exists (select * from deleted, Преподаватели
where
/* deleted. Читательский_номер = Преподаватели. Читательский_номер */. Читательский_номер = Преподаватели. Читательский_номер and
not exists (
select * from Заказы
/* Заказы. Читательский_номер = Преподаватели. Читательский_номер */
Заказы. Читательский_номер = Преподаватели. Читательский_номер
)
)@errno = 30010,
@errmsg = Cannot DELETE last Заказы because Преподаватели exists.error
/* ERwin Builtin Tue May 29 17:12:41 2007 */:@errno @errmsgtransaction
trigger tU_Заказы on Заказы for UPDATE as
// Создание триггера на обновление таблицы Заказы
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* UPDATE trigger on Заказы */
declare @numrows int, // объявление переменных
@nullcnt int,
@validcnt int,
@insЧитательский_номер int,
@insISBN varchar(20),
@errno int,
@errmsg varchar(255)
@numrows = @@rowcount
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Книга Заказы ON CHILD UPDATE NO ACTION */
/* update(ISBN) */(ISBN)@nullcnt = 0@validcnt = count(*)inserted, Книга
/* inserted.ISBN = Книга.ISBN */.ISBN = Книга.ISBN
/* */@validcnt + @nullcnt!= @numrows@errno = 30007,
@errmsg = Cannot UPDATE Заказы because Книга does not exist. error
end
end
// Создание триггера на обновление таблицы Преподаватели
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Преподаватели Делают Заказы ON CHILD UPDATE NO ACTION */
/* update (Читательский_номер) */(Читательский_номер)
begin@nullcnt = 0@validcnt = count(*)inserted, Преподаватели
/* inserted. Читательский_номер = Преподаватели. Читательский_номер */. Читательский_номер = Преподаватели. Читательский_номер
/* */@validcnt + @nullcnt!= @numrows@errno = 30007,
@errmsg = Cannot UPDATE Заказы because Преподаватели does not exist.error
/* ERwin Builtin Tue May 29 17:12:41 2007 */:@errno @errmsgtransaction
go
// Создание триггера на удаление из таблицы Замена_экземпляров
create trigger tD_Замена_экземпляров on Замена_экземпляров for DELETE as
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* DELETE trigger on Замена_экземпляров */@errno int,
@errmsg varchar(255)
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Экземпляр Заменили Замена_экземпляров ON CHILD DELETE NO ACTION */exists (select * from deleted, Экземпляр
/* deleted. Шифр = Экземпляр. Шифр */. Шифр = Экземпляр. Шифр andexists ( * from Замена_экземпляров
where
/* Замена_экземпляров. Шифр = Экземпляр. Шифр */
Замена_экземпляров. Шифр = Экземпляр. Шифр
)
)
begin
select @errno = 30010,
@errmsg = Cannot DELETE last Замена_экземпляров because Экземпляр exists.error
/* ERwin Builtin Tue May 29 17:12:41 2007 */:@errno @errmsgtransaction
go
// Создание триггера на обновление таблицы Замена_экземпляров
create trigger tU_Замена_экземпляров on Замена_экземпляров for UPDATE as
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* UPDATE trigger on Замена_экземпляров */@numrows int,
@nullcnt int,
@validcnt int,
@insШифр varchar(20),
@errno int,
@errmsg varchar(255)
@numrows = @@rowcount
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Экземпляр Заменили Замена_экземпляров ON CHILD UPDATE NO ACTION */
/* update(Шифр) */(Шифр)@nullcnt = 0@validcnt = count(*)inserted, Экземпляр
/* inserted. Шифр = Экземпляр. Шифр */. Шифр = Экземпляр. Шифр
/* */
@validcnt + @nullcnt!= @numrows@errno = 30007,
@errmsg = Cannot UPDATE Замена_экземпляров because Экземпляр does not exist.error
/* ERwin Builtin Tue May 29 17:12:41 2007 */:@errno @errmsgtransaction
go
// Создание триггера на удаление таблицы Книга
create trigger tD_Книга on Книга for DELETE as
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* DELETE trigger on Книга */@errno int,
@errmsg varchar(255)
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Книга зарегестрировали в Экземпляр ON PARENT DELETE NO ACTION */exists (* from deleted, Экземпляр
/* Экземпляр.ISBN = deleted.ISBN */
Экземпляр.ISBN = deleted.ISBN
)@errno = 30001,
@errmsg = Cannot DELETE Книга because Экземпляр exists.error
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Книга Заказы ON PARENT DELETE NO ACTION */exists (* from deleted, Заказы
/* Заказы.ISBN = deleted.ISBN */
Заказы.ISBN = deleted.ISBN
)@errno = 30001,
@errmsg = Cannot DELETE Книга because Заказы exists.error
/* ERwin Builtin Tue May 29 17:12:41 2007 */:@errno @errmsgtransaction
go
// Создание триггера на обновление таблицы Книга
create trigger tU_Книга on Книга for UPDATE as
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* UPDATE trigger on Книга */@numrows int,
@nullcnt int,
@validcnt int,
@insISBN varchar(20),
@errno int,
@errmsg varchar(255)@numrows = @@rowcount
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Книга зарегестрировали в Экземпляр ON PARENT UPDATE NO ACTION */
/* update(ISBN) */(ISBN)exists (* from deleted, Экземпляр
/* Экземпляр.ISBN = deleted.ISBN */
Экземпляр.ISBN = deleted.ISBN
)@errno = 30005,
@errmsg = Cannot UPDATE Книга because Экземпляр exists. error
end
end
// Создание триггера на обновление таблицы Заказы
/* ERwin Builtin Tue May 29 17:12:41 2007 */
/* Книга Заказы ON PARENT UPDATE NO ACTION */
/* update(ISBN) */(ISBN)exists (* from deleted, Заказы
/* Заказы.ISBN