聪明文档网

聪明文档网

最新最全的文档下载
当前位置: 首页> 数据库系统概论课程设计说明书(某医院住院部信息系统)-

数据库系统概论课程设计说明书(某医院住院部信息系统)-

时间:    下载该word文档

学号 0806420116
成绩



课程设计说明书



设计名称 数据库系统概论 设计题目 某医院住院部信息系统 设计时间 2011.1.4~2011.1.7 信息与控制工程学院 信息管理与信息系统 陈宝香

2011 1 7


目录

一、课程设计的目的-------------------------------------------------------------1 二、课程设计题内容要求--------------------------------------------------------1 三、设计说明------------------------------------------------------------------1 1系统的功能需求--------------------------------------------------------------1 2系统的功能设计--------------------------------------------------------------1 3数据库设计与实现------------------------------------------------------------2 3.1数据库的设计----------------------------------------------------------3 3.2数据库的实现----------------------------------------------------------6 4 代码实现--------------------------------------------------------------------9 4.1添加记录功能主要代码--------------------------------------------------9 4.2修改记录功能主要代码-------------------------------------------------10 4.3删除记录功能主要代码-------------------------------------------------11 4.4关键字检索功能主要代码-----------------------------------------------11 5 功能界面的实现-------------------------------------------------------------12 5.1登录功能界面---------------------------------------------------------12 5.2注册功能界面---------------------------------------------------------12 5.3系统功能界面---------------------------------------------------------12 添加记录功能---------------------------------------------------------12 修改记录功能---------------------------------------------------------14 删除记录功能---------------------------------------------------------16 关键字检索功能-------------------------------------------------------17 四、总结---------------------------------------------------------------------18 附录


某医院住院部信息系统
一、课程设计的目的
1.能够正确运用《数据库系统概论》等课程的基本理论和知识,结合一个模拟课题,初步掌握管理信息系统的方案设计、论证和分析方法。
2.了解在Windows环境下,使用SQL Server开发管理信息系统所需的计算机软、硬件环境。
3.理解SQL Server中数据库和表的概念,能根据题目的要求设计并建立数据库,建立数据库中表与表之间的关系。
4.通过编程和上机调试,进一步提高计算机的操作水平,提高解决实际问题的能力。 5.初步树立正确的程序设计思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力。

二、课程设计题内容要求
1.论述课题的性质、内容以及本次课程设计的目的和要求。
2.说明系统对计算机软、硬件环境的基本要求,对Windows操作系统和SQL Server据库管理系统简要的说明。
3.数据库的建立,数据库中表的结构,各表中关键字的设置,表与表之间的关系。 4.数据输入、调试、修改并运行通过。 5.编写课程设计说明书。

三、设计说明 1系统的功能需求
需求分析是在于要弄清用户对开发的数据库应用系统的确切要求。数据库设计的第一步是明确数据库的目的和如何使用,也就是说需要从数据库中得到哪些信息。明确目的之后,就可以确定您需要保存哪些主题的信息(表)以及每个主题需要保存哪些信息(表中字段)
在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块。这样,就把一个大的系统分解成了几个小系统。这里把系统划分为了两个部分:医生护士信息管理,病人信息管理,能够实现以下功能:
①能够实现对所有医生、护士的基本信息的查询和编辑管理; ②能够实现对所有病人的基本信息的查询和编辑管理; ③能够实现对其他有关实体的基本信息的查询和编辑管理。

2系统的功能设计 系统结构示意图:

2.1能够存储一定数量的医护人员的信息,并方便有效的进行相应的数据操作和管理,这主要包括:
1 医护人员信息的添加 2)医护人员信息的删除 3)医护人员信息的修改 4 医护人员信息的关键字检索
2.2能够对一定数量的病人的信息存储与管理,这其中包括: 1 病人信息的添加 2)病人信息的删除 3)病人信息的修改 4 病人信息的关键字检索
2.3能够对其他有关实体的信息存储与管理,这其中包括: 1)信息的登记、删除及修改 2)信息的多关键字检索查询
2.4能够提供一定的安全机制,提供数据信息授权访问,防止随意删改、查询。 2.5对查询、统计的结果能够列表显示。 3数据库设计与实现 3.1数据库的设计

3.1.1概念设计阶段
1)选择中层数据流为切入点,通常选择实际系统中的子系统; 2)设计分E-R图,即各子模块的E-R图;
3)生成初步E-R图,通过合并方法,做到各子系统实体、属性、联系统一; 医生护士管理子系统中各个实体及其属性如下: 医生(医生工号,医生姓名,工龄,职称, 病人(病人编号,病人姓名,地址,入院日期, 护士(护士工号,护士姓名,年龄)
科室(科室编号,科室名称,科室地址,联系电话) 手术(手术编号,手术名称,手术费用) 手术室(手术室编号,手术室名称) ER图如下:

病人病房管理子系统中各个实体及其属性如下: 病人(病人编号,病人姓名,地址,入院日期, 医生(医生工号,医生姓名,工龄,职称, 护士(护士工号,护士姓名,年龄) 病历(病历编号,病历详情)
手术(手术编号,手术名称,手术费用)
病房(病房编号,病房等级,病床总数,空床数目) 账单(账单编号,项目,金额) ER图如下:


4)生成全局E-R图,通过消除冲突冗余等方面。 消除冲突:
①命名冲突:异名同义,主任医师和医生含义相同;患者于病人含义相同。
②结构冲突:主任医师与医生式同一实体,在不同E-R图中的属性不同,需要取并集。 消除冗余:
医生与病人之间的治疗的关系已经包含了主任医师与患者的联系所以可以省略。


3.1.2逻辑设计
实体型转换为关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况:

一个mn联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。
一个1n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。
一个11联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合 具有相同码的关系模式可合并。
由于科室与医生的联系方式是1:n(一对多),可以将其之间的联系与n端实体医生合并,医生、病房与病人之间的维护联系是1:n(一对多),科室、护士与病房之间的维护联系是1:n(一对多),病人、手术室与手术之间的维护联系是1:n(一对多),护士和手术室
之间的维护联系是1:n(一对多)同样也将其之间的联系与n端实体合并,具体的基本E-R图向关系模型的转化如下:
医生(医生工号,医生姓名,工龄,职称,手术编号,科室编号)
病人(病人编号,病人姓名,地址,入院日期,医生工号,病房编号,病历编号,账单编号)
科室(科室编号,科室名称,科室地址,联系电话)
手术(手术编号,手术名称,手术费用,手术室编号,病人编号) 手术室(手术室编号,手术室名称)
护士(护士工号,护士姓名,年龄,手术室编号)
病房(病房编号,病房等级,病床总数,空床数目,护士工号,科室编号) 病历(病历编号,病历详情) 账单(账单编号,项目,金额) 3.1.3物理设计
数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,这个阶段中要完成两大任务:
1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构; 2)对物理结构进行评价,评价的重点是时间和空间效率。 3.2数据库的实现 3.2.1 建立数据库 create database yiyuan; 3.2.2 建立数据表 1)医生信息表的建立: create table 医生
{ 医生工号 char(10 primary key, 医生姓名 char(20 not null, 职称 char(20 not null, 手术编号 char(10, 科室编号char(10, foreign key(手术编号 references 手术(手术编号, foreign key(科室编号 references 科室(科室编号,
} 2)病人基本信息表的建立: create table病人
{ 病人编号char(10 primary key, 病人姓名char(20 not null, 地址char(20 not null, 医生工号char(10, 病房编号char(10, 病历编号char(10, 账单编号char(10, foreign key(手术编号 references 手术(手术编号, foreign key(科室编号 references 科室(科室编号, } 3)护士基本信息表的建立: create table 护士
{ 护士工号 char(10 primary key, 护士姓名 char(20 not null, 年龄 char(20 not null, 手术室编号 char(10, foreign key(手术室编号 references 手术室(手术室编号, } 4)病房基本信息表的建立: create table病房
{ 病房编号char(10 primary key, 病房等级char(20 not null, 病床总数int(2 not null, 空床数目int(2, 护士工号char(10,
科室编号char(10, foreign key(护士编号 references 护士(护士编号, foreign key(科室编号 references 科室(科室编号, } 5)科室基本信息表的建立: create table科室
{ 科室编号char(10 primary key, 科室名称char(20 not null, 科室地址char(10 not null, 联系电话char(10, } 6)手术基本信息表的建立: create table手术
{ 手术编号char(10 primary key, 手术名称char(20 not null, 手术费用float(6, 手术室编号char(10 , 科室编号char(10, foreign key(手术室编号 references 手术室(手术室编号, foreign key(病人编号 references 病人(病人编号, } 7)手术室基本信息表的建立: create table手术室
{ 手术室编号char(10 primary key, 手术室名称char(20 not null, } 8)手术室基本信息表的建立: create table病历

{ 病历编号char(10 primary key, 病历详情char(40 not null, } 9)账单基本信息表的建立: create table账单
{ 账单编号char(10 primary key, 项目int(4 not null, 详情char(40, 金额float(8, } 3.2.3建立视图
用于显示当前病人、医生、病房、账单基本信息的视图定义如下:
create view bingrenview (病人姓名,医生姓名,病房编号,病房等级,账单详情,金额
as select 病人姓名,医生姓名,病人.病房编号,病房等级,详情,金额 from 病人,医生,病房,账单
where 病人.医生工号=医生.医生工号 and 病人.病房编号=病房.病房编号 and 病人.账单编号=账单.账单编号
4 代码实现(SQL查询,功能实现) 4.1添加记录功能主要代码 ①从数据库相关表中获取数据
<% set cn=server.CreateObject("ADODB.Connection" cn.open "dsn=yiyuan;uid=sa;pwd=123" sql="select * from 医生" Set Rs=cn.Execute(sql %> ②将从网页中获得的数据插入数据库的表中
<% set cn=server.CreateObject("ADODB.Connection" cn.open "dsn=yiyuan;uid=sa;pwd=123"
sql="insert into (,,,, values('"+request.form("1"+"','"+request.form("2"+"','"+request.form("3"+"','"+request.form("4"+"','"+request.form("5"+"' " Set Rs=cn.Execute(sql %> 4.2修改记录功能主要代码 ①从数据库相关表中获取数据
<% set cn=server.CreateObject("ADODB.Connection" cn.open "dsn=yiyuan;uid=sa;pwd=123" sql="select * from 医生" Set Rs=cn.Execute(sql %> ②从表中选择对应的医生工号的信息进行修改
<% set cn=server.CreateObject("ADODB.Connection" cn.open "dsn=yiyuan;uid=sa;pwd=123" sql="select * from 医生 where 医生工号='"+request.form("xsno"+"'" Set Rs=cn.Execute(sql %> ③更新表中相应的医生的信息
<% xsno=request.form("xsno" xsxb=request.form("xsxb" xsdw=request.form("xsdw" xsmm=request.form("xsmm" if len(xsxb=0 then xsxb=" " end if if len(xsdw=0 then xsdw=" " end if if len(xsmm=0 then
xsmm=" " end if set cn=server.CreateObject("ADODB.Connection" cn.open "dsn=yiyuan;uid=sa;pwd=123" sql="update set ='"+xsxb+"',='"+xsdw+"',='"+xsmm+"' where 医生工号='"+xsno+"'" Set Rs=cn.Execute(sql set rs=nothing cn.close %> 4.3删除记录功能主要代码 ①从数据库相关表中获取数据
<% set cn=server.CreateObject("ADODB.Connection" cn.open "dsn=yiyuan;uid=sa;pwd=123" sql="select * from 医生" Set Rs=cn.Execute(sql %> ②从表中删除相关的医生的信息
<% set cn=server.CreateObject("ADODB.Connection" cn.open "dsn=yiyuan;uid=sa;pwd=123" sql="delete from 医生 where 医生工号='"+request.form("xsno"+"'" Set Rs=cn.Execute(sql %> 4.4关键字检索功能主要代码
①将输入的关键字与表中的信息对比,显示相关的信息 <% set cn=server.CreateObject("ADODB.Connection" cn.open "dsn=yiyuan;uid=sa;pwd=123" sql="select 医生工号,医生姓名,职称,手术编号,科室编号 from 医生 where 医生姓='"+request.form("t1"+"'" Set Rs=cn.Execute(sql %>
5 功能界面的实现 5.1登录功能界面(暂无) 5.2注册功能界面(暂无)
5.3系统功能界面(以医生信息管理系统为例


5.3.1添加记录功能










5.3.2修改记录功能










5.3.3删除记录功能







5.3.4关键字检索功能




四、总结
这次课设主要是完成了两个方面的任务,首先是数据库的设计与建立,第二是将数据库与网页嵌套,在网页中实现对数据库的查询、插入、删除、修改等功能。
首先,讨论数据库系统设计大体可分为需求分析、概念设计、逻辑设计、物理设计、数据库的实施及调试测试六大步骤。要设计一个实用的的数据库,首先就是要能够满足用户的各种各样的需求,即需求分析阶段。在这个阶段,必须对所要设计的系统有总体的构思和了
解,知道自己要做什么,要实现什么,并且要实际的进行相关的调查,不能凭想象或自己的了解,这样会在后续的工作中遇到很多的问题。第二,就是对数据库的安全性进行保护,建立角色、用户以及触发器等等,防止没有合法权限的人随意查看或者修改数据。
第二,在网页与数据库的连接过程中我遇到的第一个问题就是,数据库的登录。因此为了避免这样的不变,在建立数据库之初就应该设置用户名、密码等重要的参数。
这次课程设计加深了我对数据库系统概论相关知识和SQL SERVER相关功能、网页与数据库的交互技术的理解。例如对建立基本表、视图、触发器等,都比以前更加的熟练。能够实现在网页中操作数据库中的数据,对其进行查询、插入、修改、删除。并在解决遇到的各种问题的过程中,学到了很多新的实用的知识。



附录:
数据库中表的参考结构 1“医生”表结构: 字段 字段名 类型 宽度 小数位 1 医生工号 字符型 10 2 医生姓名 字符型 20 3 职称 字符型 20 4 手术编号 字符型 10 5 科室编号 字符型 10 说明:
医生工号可分为3部分:大类、小类和序号
×××××× 序号 小类
大类
例如,大类有耳鼻喉科、内分泌科、儿科类等;耳鼻喉类中有耳科、鼻科、喉咙科等;每个小类中还包含不同的人员等。

2“病人”表结构: 字段 字段名 类型 宽度 小数位 1 病人编号 数值型 6 2 病人姓名 字符型 20 3 地址 字符型 80 4 入院日期 日期型 8 5 医生工号 字符型 10 6 病房编号 字符型 2 7 病历编号 字符型 10 8 账单编号 字符型 10 说明:
1)病人编号应按病人科室等信息分类编号 2)病历编号按入院日期等编号
3)账单编号按病历编号等编号

3“护士”表结构: 字段 字段名 类型 宽度 小数位 1 护士工号 字符型 10 2 护士姓名 字符型 20 3 年龄 数值型 2 4 手术室编号字符型 10 说明:
护士工号按科室及序号编号


4“病房”表结构: 字段 字段名 类型 1 病房编号 字符型 2 病房等级 字符型 3 病房总数 数值型 4 空房数目 数值型 5 护士工号 字符型 6 科室编号 字符型

5“手术”表结构: 字段 字段名 类型 1 手术编号 字符型 2 手术名称 字符型 3 手术费用 字符型 4 手术室编号 字符型 5 病人编号 字符型 6“手术室”表结构: 字段 字段名 类型 1 手术室编号 字符型 2 手术室名称 字符型 7“病历”表结构: 字段 字段名 类型 1 病历编号 字符型 2 病历详情 字符型 8“科室”表结构: 字段 字段名 类型 1 科室编号 字符型 2 科室名称 字符型 3 科室地址 字符型 4 联系电话 字符型 9“账单”表结构: 字段 字段名 类型 1 账单编号 字符型 2 项目 字符型 3 详情 字符型 4 金额 浮点型

参考文献:
宽度 10 10 2 2 10 10 小数位
宽度 10 40 8 10 10 宽度 10 50 小数位
小数位
宽度 10 30 小数位
宽度 3 20 10 11 小数位
宽度 10 4 80 8 小数位
王珊、萨师煊,《数据库系统概论》,高等教育出版社。


  • 29.8

    ¥45 每天只需1.0元
    1个月 推荐
  • 9.9

    ¥15
    1天
  • 59.8

    ¥90
    3个月

选择支付方式

  • 微信付款
郑重提醒:支付后,系统自动为您完成注册

请使用微信扫码支付(元)

订单号:
支付后,系统自动为您完成注册
遇到问题请联系 在线客服

常用手机号:
用于找回密码
图片验证码:
看不清?点击更换
短信验证码:
新密码:
 
绑定后可用手机号登录
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系 在线客服