《数据库设计与应用》任务训练指导书Word版_第1页
《数据库设计与应用》任务训练指导书Word版_第2页
《数据库设计与应用》任务训练指导书Word版_第3页
《数据库设计与应用》任务训练指导书Word版_第4页
《数据库设计与应用》任务训练指导书Word版_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库设计与应用任务训练指导书选题名称简明门诊管理系统改成你的系统名称姓 名张三,李四改成本组作者班 级10软件332任课教师卢剑炜,赵金龙学 期2011-2012-1综合评定_目 录任务一 全面准确地提取软件系统的数据需求41.1 概述412 项目视图与范围约束413功能需求分析514 数据需求分析515 小结5任务二 依据数据需求设计E-R模型621 E-R模型设计工具622 本项目E-R模型623 小结6任务三 依据E-R模型设计关系模型831 逻辑模型设计方法832 本项目关系模型833 小结8任务四 安装并配置SQL Server 2005941 安装并配置SQL_Server200

2、5942 安装其他DBMS943 小结10任务五 在SQL_Server2005中建立符合需求的数据库1151 数据库选型1152 物理设计1153 表结构设计1154 涉及到的SQL语句1255 小结13任务六 利用SSMS管理SQL_Server2005服务器1461 创建表结构1462 涉及到的SQL语句1563 小结15任务七 利用SQL管理SQL_Server2005服务器1671 涉及到的SQL语句1672 小结17任务八 运用C#.NET开发基于SQL2005的软件系统1881 存储过程1882 本项目的简单界面1883 本项目数据库访问的部分代码1884 小结19任务九 运行并

3、维护SQL_SERVER2005服务器2091 本项目安全性设计2092 SQL2005的常规维护2093 小结20说明:1全文除首页、目录、代码、标题外,正文字体全部是:中文宋体、英文times new roman,小四,单倍行距;每一大段必须新起一页;代码有关的文字采用五号或10。2所有内容完成后右键更新下目录,并将目录字体设置为小四;3文档按小组为单位制作,两人交一份;4,文档是否打印待课程结束后再听通知;5实训通过答辩后,前请各位将源码及打印好的实训报告交给课代表,课代表12月31日(周四)前把打印的实训报告(除封面和目录外建议双面打印)、实训报告电子稿和源码用U盘拷给我。6电子资源要

4、求(课代表注意):根目录下是按项目名命名的文件夹;每个文件夹下是一个文档和一个RAR文件,文件名命名规则“学号_姓名.doc”,如“1_张三.doc”;rar文件中存放的是本系统的数据库备份文件和项目源文件;任务一 全面准确地提取软件系统的数据需求1.1 概述本系统的目的是建立一个简明的门诊管理系统,该系统由两部分组成:工作员挂号模块和医生诊疗模块,该系统可以为门诊病人提供挂号、就诊的服务。涉及到的人员有:病人、医院挂号员和医生。病人看病流程:挂号处排队挂号、交费、拿挂号单带着挂号单去门诊科室排队医生看病缴费、拿药结束挂号员工作流程:凭用户名、密码登陆挂号系统询问病人信息、挂号科室、收费录入系

5、统、打印挂号单下一位病人挂号医生诊疗流程:凭用户名、密码登陆门诊系统呼叫下一位病人询问病情、给出诊断、开药录入系统呼叫下一位病人这里要写清楚-1, 系统目的、作用2, 项目涉及的各主体基本流程12 项目视图与范围约束为了让案例清晰易懂,在不影响整体门诊流程的情况下,我们刻意忽略了以下一些会急剧增加软件复杂度的元素:(1)专家门诊。一般三级医院都开设有专家门诊,与普通门诊并行,医生来自同一个科室却采用不同的挂号计费方式,若增加专家门诊,挂号、就诊等将会非常复杂,所以暂不考虑专家门诊。(2)挂号员、医生、后台管理员的排班制。实际医院各部门都会有排班制度,员工不当班时是无法登陆HIS的,若增加则权限

6、管理复杂度上升,本系统暂时忽略。(3)医保。实际医院会根据病人医保性质的不同而采用各异的计费方式,如城市医保、农保、老干部等,本系统暂时忽略。(4)化验检测及药房。病人就诊时有时需要做化验或仪器检查,这就涉及到与化验检验工作站的对接,本系统暂不考虑化验与仪器检验,假设所有病人只需要医生问诊即可诊断;医生开药会涉及药房管理模块的对接,本系统假设医生开药以文本的形式保存在诊疗记录中。(5)系统管理员。医院基础数据,如医生信息、科室信息等都需要管理员事先录入,这一部分与当前系统关联不大,故忽略。(6)各类日志。从安全角度考虑,一般HIS都会设置日志功能,记录用户的各种操作,本简明系统暂忽略。(7)一

7、些涉及医院管理规章的数据暂不专门设置数据库来管理,如每天挂号人数上限,医生看病人数上限,工作时间等。(8)不考虑特殊情况:病人挂号后去看病(在本系统中将出现医生死等情况本节说清楚本系统有哪些不考虑)。13功能需求分析131挂号员(1) 挂号员可以根据用户名和密码登陆挂号系统,也可以退出系统;(2) 挂号员可以添加新挂号的病人信息(姓名、性别、年龄、家庭住址),也可以查阅以前挂过号的病人基本信息;(3) 挂号员根据病人的要求,为其选择相应的科室,由系统自动排就诊顺序,并打印挂号单;(4) 挂号员可以看到今天所有挂号情况(病人姓名、科室、挂号费、时间);(5) 挂号员可以为病人退号。132门诊医生

8、(1) 医生可以根据用户名和密码登陆门诊系统,也可以退出系统;(2) 医生可以查看当前病人的基本信息(病历本号、姓名、性别、年龄、家庭住址),并可修改;(3) 医生可以查看当前病人的既往病史:以往在本院的看病信息(时间、医生、科室、诊断),也可以查看每次看病的具体情况(症状、诊断、配药、备注);(4) 医生根据当前病人的实际情况录入:症状、诊断、配药、备注;(5) 医生在当前病人看病结束后召唤本科室下一位病人。 14 数据需求分析(1)医院有多个科室,每个科室有多位医生;一位医生只能属于一个科室;(2)系统需要记录科室的名称、科室地址等信息;(3)系统需要记录医生的工号、姓名、性别、职称、登陆

9、名、密码、所属科室等信息;(4)系统需要记录挂号员的工号、姓名、登陆名、密码等信息;(5)系统需要记录病人的病例号、姓名、性别、出生年月、家庭地址、就诊状态等信息;(6)挂号员在给病人挂号时需要记录:挂号时间、挂号科室、挂号费等;(7)医生看病时需记录该病人的症状、诊断、配药,并做适当备注;(8)一个病人只能有一个就诊状态;就诊状态需要记录编号、名称、备注信息;15 小结任务一花了很多时间进行了修改,特别是软件功能需求和数据需求,主要问题是我们第一次做软件,没有计算机思想,用文档描述现实需求的能力较弱,这需要老师进行多次指导。当然,通过进行数据需求分析,我们切实感受到软件开发的一般过程,领会到

10、将客观世界转化为文字描述的复杂性与难度。本数据需求我们先后改了5遍,剔除了很多容易引起误解或增加复杂度的部分,现在应该能基本满足课程要求主要总结在数据需求过程中遇到的问题及解决过程。任务二 依据数据需求设计E-R模型21 E-R模型设计工具Microsoft Visio 2003使用-新建流程图基本流程图,也可在我给你们的.vsd文件上复制、修改;直线画法右键线条,选择直线;几对几联系画法双击线条输入数字,后可以拖动数字。22 本项目E-R模型注意-实体集、联系集、属性、主码、几对几联系,联系集的属性23 小结任务二要求主要总结在本任务中遇到的问题及解决过程、收获等。任务三 依据E-R模型设计

11、关系模型31 逻辑模型设计方法(1)每个实体集转化为一个关系模式,其中:实体集的名称转化为关系模式的名称,实体集的属性转化为关系模式的属性,实体集的码转化为关系模式的码。(2)将联系集转化为关系模式,分三种情况两种处理:一对多的联系集向多的一方合并;多对多的联系集生成新的关系模式;一对一的联系集往多的一方合并或生成新的关系模式。(3)确定参照完整性。(4)综合评价3.1这一节可以不改。32 本项目关系模型病人(病人ID,姓名,性别,出生年月,家庭地址,就诊状态)就诊状态是外码;医生(医生ID,登录名,密码,姓名,性别,所属科室,职称)所属科室是外码;科室(编号,科室名,科室地址);挂号员(挂号

12、员ID,姓名,登录名,密码);就诊状态(ID,就诊状态名,备注);挂号(ID,病人ID,科室ID,挂号员ID,挂号时间,挂号费用,就诊次序)病人ID、科室ID、挂号员ID是外码;诊疗(ID,医生ID,病人ID,诊疗时间,症状,诊断,配药,备注)病人ID、医生ID是外码3.2节注意-主码、外码;可以不写E-R模型转化为关系模型的过程。33 小结任务三要求主要总结在本任务中遇到的问题及解决过程、收获等。任务四 安装并配置SQL Server 200541 安装并配置SQL_Server2005安装界面配置完成界面放两个截图-安装SQL2005过程中、安装完成打开SQL2005后各截一图片放上过程中

13、遇到的问题及解决:(1)问题:windowsXP上不能安装EnterPrise版本。解决:安装developer版。(2)问题:安装过程中出错,提示“性能计数器要求”,无法继续安装。解决:修改注册表“HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib”相关数值,重新启动安装。具体参见网址42 安装其他DBMS安装界面安装完成界面4.2反应的是你成功安装其他DBMS的过程,也用两幅图分别描述安装过程和安装成功。43 小结任务四要求主要总结在本任务中遇到的问题及解决过程、收获等。任务五 在SQL_Server2005

14、中建立符合需求的数据库51 数据库选型考虑到本系统中数据库与应用软件可能不在同一台电脑上,所以采用网络数据库,这里选择microsoft SQL_Server2005。52 物理设计(1)硬件环境:x86 系列CPU主频1GHz以上,内存1GB以上,网卡100/1000Mbps自适应(2)软件环境:windowsXP操作系统,SQL_Server2005 Developer Edition(3)存储路径按SQL_Server安装路径,文件参数、索引等按数据库默认参数。53 表结构设计Patient 病人字段数据类型长度允许空主码缺省值说明p_IDInt4否是病人ID,病例编号,自动编号p_Na

15、meNvarchar50是否病人姓名p_SexNvarchar1是否病人性别p_BirthsmallDatetime是否出生年月p_AddressNvarchar200是否家庭地址p_StatusInt是否就诊状态,外码Doctor 医生字段数据类型长度允许空主码缺省值说明d_IDInt4否是医生工号,自动编号d_Namenvarchar50是否姓名d_SexNvarchar1是否性别d_DepIDInt4否否所属科室编号,外码d_ProfessionNvarchar10是否职称d_LoginNameNvarchar50是否系统登录名d_LoginPSWNvarchar50是否系统登陆密码De

16、partment 科室字段数据类型长度允许空主码缺省值说明dep_IDInt4否是科室编号,自动编号dep_NameNvarchar50是否科室名dep_AddressNvarchar200是否科室地址Diagnosis看病字段数据类型长度允许空主码缺省值说明dia_IDBigint8否是看病编号,自动编号dia_PatientIDInt4是否病人ID,外码dia_DoctorIDint4是否医生ID,外码dia_Timedatetime8是否诊疗时间dia_SymptomNvarchar1000是否症状dia_DiagnosisNvarchar1000是否诊断dia_DispenseNvar

17、char1000是否配药dia_RemarkNvarchar1000是否备注Register挂号字段数据类型长度允许空主码缺省值说明reg_IDBigint8否是挂号编号,自动编号reg_PatientIDInt4是否病人ID,外码reg_DepIDInt4是否部门ID,外码reg_TimeDatetime8是否挂号时间reg_FeeInt4是否挂号费用reg_OrderInt4是否就诊序号reg_WorkerIDInt4是否挂号员ID,外码PatientStatus 病人状态字段数据类型长度允许空主码缺省值说明ps_IDInt4否是状态编号,自动编号ps_NameNvarchar20是否状态

18、名ps_RemarkNvarchar100是否状态说明Worker 挂号员字段数据类型长度允许空主码缺省值说明w_IDInt4否是挂号编号,自动编号w_NameNvarchar20是否姓名w_LoginNameNvarchar50是否登录名w_LoginPSWNvarchar50是否登陆密码54 涉及到的SQL语句Create database HIS改成你所创建的数据库名称55 小结任务五要求主要总结在本任务中遇到的问题及解决过程、收获等。任务六 利用SSMS管理SQL_Server2005服务器61 创建表结构此大图如此获得:双击打开HIS数据库,第一个选项“数据库关系图”右键,选择“新建

19、数据库关系图”62 涉及到的SQL语句本节请根据实际数据库使用以下关键词各写一个实际SQL语句:Create table, alter table ,drop table ;insert ,update ,delete,create index-所有语句必须经过SQL调试,最好是从SQL调试器中复制过来的(会自动有颜色分辨)并有注释,用-引导(1)创建表结构-创建病人表create table patient(p_ID int primary key ,p_name nvarchar(50) ,p_sex nvarchar(1),p_birth smalldatetime,p_address

20、nvarchar(200),p_status int,foreign key (p_status) references patientstatus(ps_id这里换成你的数据库所涉及到的某个表的创建语句-别忘了约束!),)(2)修改表结构-修改病人表,增加一列身份证号码ccidAlter table patient add ccid nvarchar(18) (3)删除表结构-删除病人表Drop table patient(4)插入数据-插入一行新病人信息Insert into patient (p_name,p_sex,p_address,p_status) values (王小丫,女,N

21、ULL,4)(5)修改数据-修改病人信息Update patient set p_address=常州市新北区黄河中路号 where p_id = 12(6)删除数据-删除某个病人Delete from patient where p_id=12(7)创建索引-为挂号表在病人ID列上增加非聚集索引create index i_reg_pid on register(reg_patientid) 63 小结任务六要求主要总结在本任务中遇到的问题及解决过程、收获等。任务七 利用SQL管理SQL_Server2005服务器71 涉及到的SQL语句自己思考本系统可能用到哪些查询语句,也可以假想一些查询

22、,必须包含一下六条分类。简单查询单表,只用到select和from;连接查询;子查询;复杂的单表查询要用到select的六个关键词;复杂的多表查询要用到两张以上表,且用到select的六个关键词;创建视图。(1)简单查询-查询所有病人姓名、年龄select p_name as 姓名, year(getdate()-year(p_birth)+1 as 年龄from patient(2)连接查询-查询与吕正太医生同科室的医生信息select doctor.*from doctor,doctor as D2where doctor.d_depid=D2.d_depid and D2.d_name=

23、吕正太(3)子查询-查询与吕正太医生同科室的医生信息select *from doctorwhere d_depid=(select d_depid from doctor where d_name=吕正太)(4)复杂的单表查询-查询男医生人数大于2的科室编号及男医生人数,结果按男医生人数降序排列select d_depid as 科室编号,count(d_id) as 男医生人数from doctorwhere d_sex=男group by d_depidhaving count(d_id)2order by 男医生人数(5)复杂的多表查询-统计年月份看病人次不少于的医生姓名、次数,结果按

24、照次数降序排列select doctor.d_name,count (diagnosis.dia_id) as 人次from doctor ,diagnosiswhere (doctor.d_id=diagnosis.dia_doctorid) and (diagnosis.dia_time between 2011-9-1 and 2011-9-30)group by doctor.d_namehaving count (diagnosis.dia_id)=1order by 人次desc(6)创建视图-创建视图V_呼吸科医生,反应的是呼吸科的医生信息create view v_呼吸科医生a

25、s select *from doctor where d_depid=(select dep_id from department where dep_name=呼吸科)72 小结任务七要求主要总结在本任务中遇到的问题及解决过程、收获等。任务八 运用C#.NET开发基于SQL2005的软件系统81 存储过程只需要写一个存储过程,但要求有:两个以上输入参数,至少一个输出参数-老病人挂号UP_InsertRegisterOld-输入参数有个,输出参数个,若0则表示挂号编号,即reg_id值create procedure UP_InsertRegisterOldreg_patientid int,reg_depid int,reg_fee int,reg_workerid int,r_flag int outputasbegindeclare reg_order int select

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论