Автор работы: Пользователь скрыл имя, 25 Марта 2011 в 19:27, курсовая работа
В данной работе разрабатывается база данных по теме «Вкладчики и вклады Сбербанка».
Курсовая работа содержит пояснительную записку на 10 стр. и 4 приложения на 4 стр.
Рассматривается предметная область, связанная с банком; проектируется собственно база данных методом сущность-связь, детали которого рассматриваются в подробностях применительно к теме; построенная модель реализуется на SQL.
Введение……………………………...……………………………………….….4
§ 1. Проектирование базы данных…………………………….....................5
1.1 Предметная область..........................................................................5
1.2 Метод сущность-связь......................................................................5
1.3 Выделение сущностей.......................................................................5
1.4 Построение ER-диаграмм.................................................................6
1.5 Построение предварительных отношений.......................................9
1.6 Построение конечных отношений...................................................11
1.7 Конечная диаграмма базы данных.................................................14
Заключение……………………………………………………………………..15
Список используемой литературы………………………………………….16
Приложения…………………………………………………………………….17
INSERT INTO Investment_Operation(OID,
VALUES (3,417232,200,535721,'01.16.
INSERT INTO Investment_Operation(OID,
VALUES (4,571234,95,571234,'03.01.
INSERT INTO Investment_Operation(OID,
VALUES (2,623613,2000,623613,'02.03.
INSERT INTO Investment_Operation(OID,
VALUES (4,712345,10000,712345,'04.06.
INSERT INTO Investment_Operation(OID,
VALUES (1,254178,0,254178,'12.05.2009 17:40')
INSERT INTO Investment_Operation(OID,
VALUES (1,712345,0,712345,'12.02.2009 11:24')
INSERT INTO Investment_Operation(OID,
VALUES (1,417232,0,417232,'12.10.2009 15:33')
INSERT INTO Investment_Operation(OID,
VALUES (2,322145,100, 322145,'06.29.2009 13:25')
INSERT INTO Investment_Operation(OID,
VALUES (4,812345,5000, 812345,'05.28.2009 17:00')
INSERT INTO Investment_Operation(OID,
VALUES (4,812345,5000, 812345,'05.15.2009 13:04')
INSERT INTO Investment_Operation(OID,
VALUES (3,325091,5000, 437913,'11.23.2008 19:30')
Заполняем Архив
INSERT INTO Archive (IOID,PasportSN,DateOfClosure)
VALUES (6, '6708 321546' ,'12.05.2009 17:40')
INSERT INTO Archive (IOID,PasportSN,DateOfClosure)
VALUES (7, '6758 121543' ,'12.02.2009 11:24')
INSERT INTO Archive (IOID,PasportSN,DateOfClosure)
VALUES (8, '5691 324567','12.10.2009
15:33')
Приложение №3 Триггер
При снятии средств проверка на их наличие
CREATE TRIGGER T1
ON Investment_Operation FOR INSERT
AS IF EXISTS (SELECT InvSum FROM Investments Inv
JOIN INSERTED I ON Inv.AccountNumber = I.AccountNumber
WHERE InvSum = 0 AND OID = 2)
BEGIN
ROLLBACK
PRINT 'Sorry! You can not withdraw money from an account in which there is no money'
END
Приложение №4. Представления и запросы
Представления
1. Список процентов банка по вкладам за месяц
CREATE VIEW V1
AS
SELECT AccountNumber, Per_Cents FROM Investments
WHERE MONTH(OpenningDate) = 11
2. Количество операций по каждому вкладу за месяц
CREATE VIEW V2
AS
SELECT AccountNumber, COUNT(OID) AS 'Number of Operations' FROM Investment_Operation
WHERE MONTH(OpDate) = 2
Запросы
1. Список закрытых вкладов за текущий месяц
SELECT AccountNumber FROM Investment_Operation
WHERE OID = 1 AND MONTH(OpDate) = MONTH(GETDATE())
2. Количество вкладчиков по каждому виду вклада
SELECT Type, COUNT(InvestorName) AS 'Number of Investors' FROM Investors It
JOIN Investments Im ON It.PasportSN = Im.PasportSN
GROUP BY Type