oracle三级项目.docx
《oracle三级项目.docx》由会员分享,可在线阅读,更多相关《oracle三级项目.docx(15页珍藏版)》请在冰豆网上搜索。
oracle三级项目
网上预约系统的设计与实现
一.系统构思:
医院预约挂号系统主要实现对某一个城市的医院进行管理,同时实现对某一个医院的医生以及可以挂号的科室进行管理和对预约用户的管理等。
系统可以大致分为以下几个功能:
1.医院管理
医院管理实现医院信息的添加,修改,删除,查询以及统计等。
2.医生管理
医生管理实现医生信息的添加,修改,删除,查询以及统计等。
3.停诊管理
停诊管理实现停诊医生信息的添加,修改,删除,查询以及统计等。
4.用户管理
用户管理实现用户信息的添加,修改,删除,查询以及统计等。
二.系统设计:
1.需求描述
项目用例图如下:
2.概念结构设计
E-R图如下:
3.逻辑结构设计
(1)表空间设计:
在医院预约挂号管理系统中,为了合理的管理业务数据,索引数据,临时数据以及回滚信息,需要创建不同类型的表空间,为了便于实现数据的分区管理,需要创建永久性的表空间TESTTBS1,TESTTBS2,TESTTBS3,TESTTBST4,TESTTBS5,为了实现临时信息的管理,需要创建TESTTEMP1和TESTTEMP2两个临时表空间,并组成TEMP_GROUP临时表空间组。
为了实现对回滚信息的自动管理,需要创建撤销表空间TESTUNDO1。
在创建表空间时需要合理的规划表空间的存储设置。
(2)表结构设计:
根据管理系统的ER图,设计出该系统的5个关系表。
1.hostpital表
数据项名
含义
关系
类型
长度
取值
id
ID号
Number
11
Notnull
name
医院名
主键
Varchar
20
Notnull
address
地址
varchar
400
Notnull
info
简介
Varchar
400
transport
乘车路线
Varchar
300
表11
2.doctor表
数据项名
含义
关系
类型
长度
取值
id
ID号
Number
11
Notnull
name
医生名
主键
Varchar
20
Notnull
hospital
所属医院
varchar
20
Notnull
position
职位
Varchar
20
Notnull
info
科别
Varchar
20
Notnull
subdep
子科别
Varchar
20
Notnull
表12
3.stop表
数据项名
含义
关系
类型
长度
取值
id
ID号
Number
11
Notnull
doctor
医生
主键
Varchar
20
Notnull
stoptime
停诊时间
varchar
30
Notnull
type
出诊类别
Varchar
20
Notnull
department
科别
Varchar
20
Notnull
room
诊室
Varchar
20
Notnull
表13
4.yuyue表
数据项名
含义
关系
类型
长度
取值
id
ID号
Number
11
unique
username
用户名
主键
Varchar
20
Notnull
name
预约姓名
Varchar
20
Notnull
sex
性别
varchar
10
Notnull
idcard
身份证号
Varchar
20
hospital
医院名
Varchar
20
Notnull
doctor
预约医生
Varchar
20
Notnull
subdep
子科别
Varchar
20
Notnull
date
预约日期
Varchar
20
Notnull
表14
5.user表
数据项名
含义
关系
类型
长度
取值
username
用户姓名
主键
Varchar
20
Notnull
password
密码
varchar
20
Notnull
email
电子邮箱
Varchar
30
realname
真实姓名
Varchar
20
Notnull
telephone
联系电话
Varchar
11
Notnull
sex
性别
Varchar
10
Notnull
表15
SQL代码:
创建hospital表
创建doctor表
创建yuyue表
创建用户表
创建stop表
(3)序列设计:
创建hospital表的序列
创建doctor表序列
创建yuyue表序列
创建用户表序列
创建stop表序列
(4)索引设计:
创建hospital表的索引
创建doctor表索引
创建yuyue表索引
创建用户表索引
创建stop表索引
三.数据库实施
(1)创建用户,并给用户授权
为了保证系统开发的顺利进行,需要在医院预约挂号管理系统数据库中进行下列安全控制:
创建一个开发者的角色hreo_develop_role,将系统开发所需的权限授予该角色。
创建一个概要文件hero_profile,对系统开发者进行资源使用限制以及口令的管理
创建一个用于系统开发的用户HR用户,授予角色HERO_DEVELOP_ROLE,指定概要文件hero_profile
创建一个普通用户角色hero_user_role,授予各种管理系统的对象查询权限
创建一个普通用户hreo_user,授予hero_user_role角色
(2)创建表
表结构如下:
(3)创建序列
(4)创建索引
四.PL/SQL程序设计
(1)存储过程的设计
存储过程:
以医院名为参数显示该医院的所有医生
(2)函数的设计
函数:
以医生编号为参数,返回医生所在科室
(3)触发器的设计
触发器:
只有6:
00到23:
00可以预约
(4)包的设计
包:
包含一个游标和一个存储过程,游标存储用户所有的预约信息,存储过程每次输出5条预约信息
6.PL/SQL程序开发
(1)存储过程的实现
(2)函数的实现
(3)触发器的实现
(4)包的实现