Oracle图书管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.1课程设计目的
通过专业课程设计Ⅱ,即大型数据库系统课程设计,有助于培养学生综合运用数据库相关知识解决实际问题的能力。本设计要求对实际问题进行需求分析,提炼实际问题中的数据,建立关系模型,并在大型数据库中得以实现。同时要求对数据库的运营、管理及使用上进行必要的规划和实现。
2.2课程设计任务
基本任务:
(1)根据需求,补充必要的数据库实体,建立ER模型,通过ER图表示。
(2)在Oracle中创建该系统的数据库,并在数据库中实现各表,写入一定的数据。
(3)从实际查询应用出发,为一些主要的应用模块设计至少3个参数化视图。
(4)从数据检验的角度出发,为相关的表建立至少1个触发器。
(5)从数据更新或修改的角度出发,设计至少1个存储过程。
(6)从安全的角度出发,规划系统的角色、用户、权限,并通过相关的SQL实现。
(7)预计每个表的大致容量和增长速度,指定备份的方案,写出相关的备份命令。
3.2 表空间及表的设计
create table book
( bno varchar(10) primary key,
bname varchar(40) not null,
writer varchar(30) not null,
btype varchar(8),
price float,
storenum int,
pub varchar(50),
pubday varchar(15)
);
create table reader
( rno varchar(10) primary key,
rname varchar(20) not null,
sex varchar(2) check(sex='男'or sex='女'),
type varchar(8) not null,
bwnum int not null,
depart varchar(20),
phone varchar(15) not null)
);
create table b_borrow
( bno varchar(10),
rno varchar(10),
primary key(bno,rno),
rname varchar(20) not null,
bwday varchar(10) not null,
bkday varchar(10) not null,
foreign key(bno) references book(bno),
foreign key(rno) references reader(rno)
);
create table bmanager
( mno varchar(10) primary key,
mname varchar(20) not null,
msex varchar(2) check(msex='男'or msex='女'),
mphone varchar(15) not null,
address varchar(20) not null
);
create table b_manage
(mno varchar(10),
bno varchar(10),
primary key (mno,bno),
mname varchar(20) not null,
tnum int not null,
addtime varchar(10),
bwtimes varchar(8) not null,
foreign key(mno) references bmanager(mno),
foreign key(bno) references book(bno)
);
create table r_manage
(mno varchar(10),
rno varchar(10),
primary key (mno,rno),
rname varchar(20),
back varchar(2) check(back='是'or back='否'),
foreign key(mno) references bmanager(mno),
foreign key(rno) references reader(rno)
);
create table m_rule
(mno varchar(10),
rno varchar(10),
primary key (mno,rno),
rname varchar(20) not null,
rtype varchar(10) check(rtype='丢失赔款'or rtype=’损坏赔偿’ or rtype='逾期罚款') not null,
cashnum varchar(10) not null,
foreign key(mno) references bmanager(mno),
foreign key(rno) references reader(rno)
);
3.3 视图设计
create view bookview
as select * from book where btype='计算机'
with check option;
create view readerview