医院住院病人管理数据库设计

上传人:无*** 文档编号:86561073 上传时间:2022-05-07 格式:DOC 页数:9 大小:82KB
收藏 版权申诉 举报 下载
医院住院病人管理数据库设计_第1页
第1页 / 共9页
医院住院病人管理数据库设计_第2页
第2页 / 共9页
医院住院病人管理数据库设计_第3页
第3页 / 共9页
资源描述:

《医院住院病人管理数据库设计》由会员分享,可在线阅读,更多相关《医院住院病人管理数据库设计(9页珍藏版)》请在装配图网上搜索。

1、-_大学软件学院 实验报告课程: 数据库原理与实用技术实验 学期: 2021-2021学年 第二学期 任课教师: 薛 专业: 网络工程 *: *: 成绩:期末大作业:医院住院病人管理数据库设计一、实验目的1掌握数据库设计的根本方法2掌握各种数据库对象的设计方法二、实验内容1.数据库概要设计:用文字简要描述实体之间的联系,画出E-R图标出各联系中实体的基数。 E-R图提供了表示实体型、属性和联系的方法。 1 实体型:用矩形表示,矩形框内写明实体名; 2 属性:用椭圆形表示,并用无向边将其与相应的实体连接起来; 3 联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无

2、向边旁标上联系的类型。 注意:如果一个联系也具有属性,则这些属性也要用无向边与该联系连接起来。 下面将根据要设计的住院数据库对其中涉及到的实体、实体属性和实体间的联系进展分析和设计。 1 实体及其属性分析根据本次课程设计所给出的初始条件,目前有以下实体:病人实体、病房实体、病床实体、医生实体、科室信息实体和住院登记实体。对于这些实体,它们的实体及属性图如图4-7所示:住院数据库实体及其属性如以下图:编号*病房病床情况收费标准所属科室编号性别医生年龄职称病案号部门*科室编号性别科室名病人年龄科室信息主管医生*病房编号主治医师2 分E-R图设计在本次设计中,根据任务书所提供的业务规则,实体和实体之

3、间可以有以下几种联系: 1 医生与病人之间的联系,它们之间的联系图如图1所示; 2 病人与病房以及病房与病床之间的联系,它们之间的联系图如图2所示; 3) 医生与科室信息之间的联系,它们之间的联系图如图3所示;1:病人与医生联系图n人n医生病人治疗2:病人与病房及病房与病床联系图n人1人拥有病房病床病房n人1人住在病人3: 医生与科室信息之间的联系医生科室名办公11 (一般来说,一个医生拥有一个办公科室)3 根本E-R图设计 对于分E-R图,它们之间往往存在一些不一致的地方,即冲突。合并时不能简单的将上述的各个分E-R图画在一起,必须要消除各个分E-R图中的不一致,以形成一个能为全系统所有用户

4、所共同理解和承受的统一的概念模型。在上述分E-R图上可以做出修改,最终形成的根本E-R图如以下图所示:医院住院数据库根本E-R图:1n病人治疗医生n1住在办公1科室病房12、数据表设计:将E-R图转换为数据表,给出创立各表的SQL语句。一:关系模型设计 关系模型的逻辑构造是一组关系模式的集合。将E-R图转换为关系模型实际上就是将实体型、实体型的属性和实体之间的联系转换为一组关系模式,这种转换需要遵守以下原则:1. 一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。2. 对于实体之间的联系有以下几种情况:1 一个1:1的联系可以转换为一个独立的关系模式,也可以与任意一

5、端对应的关系模式合并。2 一个1:n的联系可以转换成为一个独立的关系模式,也可以与n端对应的关系模式合并。3 一个m: n的联系转换为一个关系模式。4 3个或者3个以上的实体之间的一个多元联系可以转换为一个关系模式。5 具有一样码的关系模式可以合并。 按照上述的原则,根据设计好的E-R图,可以将其转换为以下一组关系模式,其中关系模式的码用下横线标出。1病人病案号,*,性别,病房编号此为病人实体型所对应的关系模式。其中病案号为次关系模式的码,而病房编号为该关系模式的外码。 2病房病房编号,收费标准,所属科室,病床号 此为病房实体型所对应的关系模式。其中病房编号唯一确定一个病房,所以为该关系模式的

6、码。3医生医生编号,*,性别,职称,部门此为医生实体型所对应的关系模式。其中医生编号唯一确定一个医生,所以为该关系模式的码。4科室信息科室编号,科室名,主治医生* 此为科室实体型所对应的关系模式。其中科室编号唯一确定一个科室,所以为该关系模式的码。一:数据字典: 1病人信息的数据项描述:数据项名数据项含义类型长度允许空备注病案号病人的编号VARCHAR15 NOT NULL主键对应唯一一个病人*病人*VARCHAR20NULL性别病人性别CHAR2NULL只能取男或女年龄病人年龄char50NULL病人VARCHAR12NULL病房编号CHAR4NULL住院时由系统分配病床号int2NULL一

7、个病房一般有1-3个床位主治医师CHAR50NULL 2病房信息的数据项描述:数据项名数据项含义类型长度允许空备注病房编号病房编号CHAR50 NOT NULL主键病房编号唯一收费标准INT4NULL单位为元/天所属科室VARCHAR50NULL病床情况char50NULL一个病房一般有1-3个床位3医生信息的数据项描述:数据项名数据项含义类型长度允许空备注医生编号医生编号VARCHAR50 NOT NULL主键对应唯一一个医生*医生*VARCHAR50NULL性别医生性别CHAR2NULL只能取男或女年龄医生年龄CHAR50职称医生职称VARCHAR50NULL有可能有多个职称医生VARCH

8、AR50NULL科室编号所属部门VARCHAR50NULL 4科室信息的数据项描述:数据项名数据项含义类型长度允许空备注编号科室编号CHAR50 NOT NULL主键科室编号唯一科室名VARCHAR50NULLVARCHAR50NULL主治医生*VARCHAR50NULL 关系图如下:表的详细列名:根本表的设计完成数据库的逻辑和物理设计后,需要运用SQL语言对数据库中所涉及的表进展定义,同时要考虑与表有关的完整性约束条件。1. 建立病人表:CREATE TABLE 病人(病案号 VARCHAR(15) PRIMARY KEY,* VARCHAR(20) NOT NULL,性别 CHAR(2)

9、CHECK(性别 IN(男,女),年龄 VARCHAR(100) NOT NULL, VARCHAR(12),病房编号 CHAR(50) NOT NULL,病床号 INT,主治医生* CHAR(50),FOREIGN KEY (病房编号) REFERENCES 病房(病房编号); Foreign key (主治医生*)references 医生(医生*),2.建立医生表:create table 医生 ( 医生编号 VARCHAR(50) not null,医生* CHAR(10) , 性别 CHAR(5) , 年龄 CHAR(20), 职称 VARCHAR(50), VARCHAR(50),

10、科室编号 VARCHAR(50),primary key(医生编号),Foreign key (科室编号)references 科室(科室编号),);3.建立病房表:create table 病房 ( 病房编号 CHAR(50) not null,收费标准 INT , 所属科室 VARCHAR(50) , 病房情况 CHAR(50), primary key(病房编号),);4 .简历科室表create table 科室 ( 编号 VARCHAR(50) not null,科室名 CHAR(10) , 主治医生* CHAR(5) , CHAR(20), primary key(科室编号),);

11、1. 插入病人信息insert into 病人 values(001,阿一,男,18,333333,101,1,陈一);insert into 病人 values(002,阿二,男,18,433333,102,1,陈二);insert into 病人 values(003,阿三,男,18,533333,103,1,陈三);insert into 病人 values(004,阿四,男,18,633333,104,1,陈四);插入病房根本信息insert into 病房 values(101,300,外科,3床位);insert into 病房 values(102,400,内科,3床位);ins

12、ert into 病房 values(103,500,儿科,3床位);insert into 病房 values(104,600,妇科,3床位);插入医生根本信息insert into 医生 values(001,陈一,男,30,中级,1111,1);insert into 医生 values(002,陈二,女,50,高级,2111,2);insert into 医生 values(003,陈三,男,30,中级,3111,3);insert into 医生 values(004,陈四,女,40,高级,4111,4);插入科室根本信息insert into 科室 values(101,外科,陈一

13、,1111);insert into 科室 values(102,内科,陈二,2111);insert into 科室 values(103,儿科,陈三,3111);insert into 科室 values(104,妇科,陈四,4111);3、 完整性约束:根据需要给数据表添加数据完整性,并说明添加的理由。建立完整性约束:保证医生的真实性,和医生编号的正确性建立完整性约束:保证病人的真实性,和病人编号的正确性建立完整性约束:保证科室的真实性,和科室编号的正确性建立完整性约束:保证病房的真实性,和病房编号的正确性create rule d_rule as Wno like w0-9;e*ec

14、Sp_bindrule d_rule, 病房.Wno;验证存入的信息:插入:查看是否存入:查找功能 :4、存储过程、触发器和视图:根据需要给数据库添加几个实用的存储过程、触发器和视图,并说明它们各自的功能。 一:建立触发器: 用企业管理器为表病人创立一个级联更新触发器trrigger_c。要求:假设修改病人表中一病人的编号,则表病房中与该病人相关的编号自动修改。 1、 启动企业管理器,选择数据库-医院管理 ,将其展开,单击表对象。 2、翻开触发器属性对话框。在右窗格中,用鼠标右键单击表对象病人,在翻开的快捷菜单中选择所有任务管理触发器选项,翻开触发器属性对话框。3、创立SQL语句。在文本输入框

15、内输入下面语句:create trigger trigger_c on 病人 for update as if update(病房编号) begin declare 病房编号_new nvarchar(50),病房编号_old nvarchar(50) select 病房编号_new=病房编号 from inserted select 病房编号_old=病房编号 from deleted update 病房set 病房编号=病房编号_new where 病房编号=病房编号_old end 二. 建立存储过程:存储过程是保存起来的可以承受和返回用户提供的参数的 Transact-SQL 语句的集

16、合。可以创立一个过程供永久使用,或在一个会话中临时使用,或在所有会话中临时使用。也可以创立在 Microsoft SQL Server启动时自动运行的存储过程。它可以实现模块化编程。具有对数据库立即的功能。可以加快程序的运行速度。可以减少网络流量。可以提高数据库的平安性。自动执行存储过程。Create Proc 医生治疗的情况 as select 医生.医生编号,病人.病案号 from 医生 inner join 病人 on 医生.医生编号=病人.病案号e*ec sp_depends 医生治疗的情况Create Proc 病人情况as select*from 病人 Returne*ec sp_

17、depends 病人情况三. 创立视图: 视图是虚表,它就像一个窗口,透过它可以看到数据库中自己感兴趣的数据及其变化。创立视图显示医生与病人对应情况create view 病人与医生as select 病案号,*,医生*from 医生 inner join 病人 on 医生.医生编号=病人.病案号四. 数据库的备份备份数据库 选择 医院病房管理 数据,右键选择所有任务, 然后选择备份数据库,弹出对话框,点击添加, 弹出对话框,选择要保存备份文件的路径和指定文件名,点击确定完成备份工作。 5、实验小结。 在这些天中,我们学到了很多东西,包括建表,导入数据,查询,插入。最重要的是我们有时机用电脑自己进展实践,没接触的时候总是觉得它比较深奥或是不可接近的新型语言,尽管自己心理上有些陌生感。学习数据库就和我们平时的其它科目学习一样感觉它有永无止境的知识SQLServer数据库的实验学习使我对数据库的有了新的进步,以后再看到也就不至于什么也不懂,其实则多数据库我觉得学好一门就行,只是他们的语言可能不大一样,学好一门后就可去认识其它的,这样应该有事半功倍的效果。因此,我感谢教师给了我有用的知识,以便我在以后学习或认识更多的内容能有新的方法和思维,也能更加有效和快速的去消化吸收新的东西。希望在今后中,SQLServer能给我更多帮助。. z.

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!