多媒体数据库设计实验.doc_第1页
多媒体数据库设计实验.doc_第2页
多媒体数据库设计实验.doc_第3页
多媒体数据库设计实验.doc_第4页
多媒体数据库设计实验.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

指标等级ABCD功能完整程序质量按时检查提问回答检查时间总评成绩云南大学软件学院实 验 报 告序 号: 45 实验老师: 赵娜 课程名称: 多媒体数据库系统设计 实验名称: 规范化 学 号: 20091120261 姓 名: 郭娟 课程名称 多媒体数据库设计 实验项目规范化实验目的 1熟悉数据库建模工具visio的使用。2.理解数据库设计的规范化。3.按照实验要求完成以下几个实例。实验内容(算法、程序、步骤和方法)1.熟悉数据库建模工具visio的使用;2.完成下列3个ER图的数据库规范化设计,使用建模工具,采用Crows Feet数据建模方法,绘制出各数据库的ER图。3.要求:a) 标明实体及相互之间的关系b) 标明实标明实体的字段及相应属性的字段属性(数据类型及大小)c) 标明实体的主键和外键。数据记录和计算 Exercise 11 根据题意,我们可以得出下面的数据依赖关系:patient_idpatient_fnamepatient_idpatient_lnamepatient_idpatient_streetpatient_idpatient_citypatient_idpatient_statepatient_idpatient_phonepatient_idpatient_zippatient_zippatient_streetpatient_zippatient_citypatient_zippatient_statepatient_iddoctor _fnamepatient_iddoctor _lnamedoctor_iddoctor _phonedoctor_iddoctor _beeper2 由上述关系,我设计了3个基本数据表和1个关联表:PATIENT表是记录病人信息的表。它的主键是patient_id;ADDRESS表记录的是病人的地址信息;DOCTOR记录的是医生信息表,它的主键是doctor_id。由于一个PATIENT对应多个DOCTOR,一个DOCTOR也对应多个PATIENT,所以他们之间是多对多的关系,于是我又建立了一个CONSULTATION会诊信息表,它记录的是每次会诊的病人的id号和医生的id号,关联了PATIENT表和DOCTOR表。表与表之间的关系如下:一对多:PATIENTCONSULTATION、DOCTORCONSULTATION。多对一: PATIENTADDRESS3 用visio工具画出的ER图如下:Exercise 21 根据题意,我们可以得出下面的数据依赖关系:patient_idpatient_fnamepatient_idpatient_lnamepatient_idpatient_streetpatient_idpatient_citypatient_idpatient_statepatient_idpatient_phonepatient_idpatient_zippatient_zippatient_streetpatient_zippatient_citypatient_zippatient_stateinsurance_companyinsurance _contact_firstinsurance_companyinsurance _contact_lastinsurance_companyinsurance _contact_phone2 由上述关系,我设计了3个基本数据表和1个关联表:PATIENT表是记录病人信息的表。它的主键是patient_id;ADDRESS表记录的是病人的地址信息;INSURANCE COMPANY记录的是保险公司信息表,它的主键是insurance_id。由于一个PATIENT对应多个INSURANCE COMPANY,一个INSURANCE COMPANY也对应多个PATIENT,所以他们之间是多对多的关系,于是我又建立了一个INSURANCE SERVICE保险业务表,它记录的是每个病人的id号和保险公司的id号,关联了PATIENT表和INSURANCE COMPANY表。表与表之间的关系如下:一对多:PATIENTINSURANCE SERVICE、INSURANCE COMPANYINSURANCE SERVICE。多对一: PATIENTADDRESS表与表之间的关系如下:一对一:无。一对多: 3 用visio工具画出的ER图如下:Exercise 31 根据题意,我们可以得出下面的数据依赖关系:patient_idpatient_fnamepatient_idpatient_lnamepatient_idpatient_streetpatient_idpatient_citypatient_idpatient_statepatient_idpatient_phonepatient_idpatient_zippatient_zippatient_streetpatient_zippatient_citypatient_zippatient_statepatient_idsymptomspatient_idlanguage2 由上述关系,我设计了5个基本数据表和1个关联表:PATIENT表是记录病人信息的表,它的主键是patient_id;ADDRESS表记录的是病人的地址信息,它的主键是zip_id;RECORD表记录的是会诊信息表,它的主键是record_id;SYMPTOMS表记录的是会诊的症状信息表,它的主键是symptom_id;LANGUAGE表记录的是会诊语言信息表,它的主键是language_id。由于一个RECORD对应多个SYMPTOMS,一个SYMPTOMS也对应多个RECORD,所以他们之间是多对多的关系,于是我又建立了一个SYMPTOMS OF RECORD表,它记录的是每个会诊记录的id号和症状的id号,关联了RECORD表和SYMPTOMS表。表与表之间的关系如下:一对多:PATIENTRECORD、SYMPTOMSSYMPTOMS OF RECORD、RECORDSYMPTOMS OF RECORD。多对一: PATIENTADDRESS3 用visio工具画出的ER图如下:总结:上述各表均满足3NF。表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。上述个表中所以满足第一范式。主关键字只有一个,非主属性非部分依赖于主关键字,所以上图中设计的表满足第二范式。在第二范式的基础上,数据表中不存在非关键字段对任一候选关键字段的传递函数依赖,符合第三范式。结 论(结 果)通过本次实验,我对数据库设计的规范化又多了一些认识。关系型数据库是当前广泛应用的数据库类型,关系数据库设计是对数据进行组织化和结构化的过程,核心问题是关系模型的设计。对于数据库规模较小的情况,我们可以比较轻松的处理数据库中的表结构。随着项目规模的不断增长,相应的数据库也变得更加复杂,关系模型表结构更为庞杂,这时我们往往会发现我们写出来的SQL语句的是很笨拙并且效率低下的。由于表结构定义的不合理,会导致在更新数据时造成数据的不完整。因此,就有必要学习和掌握数据库的规范化流程,以指导我们更好的设计数据库的表结构,减少冗余的数据,借此可以提高数据库的存储效率,数据完整性和可扩展性。在创建一个数

温馨提示

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

评论

0/150

提交评论