版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章信息系统基本知识信息系统概述信息系统类型职能信息系统1.1信息系统概述信息系统的概念认识一个信息系统:高校教务信息系统教务系统是高校进行教学活动管理的信息系统。它将教学计划、课程、学生、教师等有关信息采用数据库进行集中存储,通过基于网络的应用程序为教师、学生、教务员等用户提供信息服务。教务信息系统的系统结构基于Internet的浏览器/服务器架构(Browser/Server,简称B/S)。图1.1教务信息系统的系统结构在学校网络信息中心建立数据库服务器用来存储和管理数据,建立Web服务器发布Web应用程序,用户在能够接入Internet的计算机上使用Web浏览
器就可以访问Web网站,
使用系统提供的各种管理和服务功能。系统包括三个功能模块,各类用户登录系统后使用相关功能:学生模块支持课程信息查询、选课和退课、成绩查询等功能;教师模块支持打印班级名册、录入考试成绩、成绩分析等功能;教务员模块支持对课程、教师、班级、学生的基本信息维护,生成专业名册、班级名册,优秀生选拔等功能。学生模块:支持课程信息查询、选课和退课、成绩查询等功能。教师模块:支持打印班级名册、录入考试成绩、成绩分析等功能。教务员模块:支持对课程、教师、班级、学生的基本信息维护,生成专业名册、班级名册,优秀生选拔等功能。在教务系统中,核心要素是信息资源,它存储在数据库中,通过计算机硬件、网络和软件提供各种信息服务,支持由各类用户参与的以信息为中心的教学管理活动。2.信息系统的概念系统:从控制论的观点看,系统是一些部件为了某种目标而有机地结合的一个整体。信息系统:是一个以人为主导,利用计算机硬件、软件、网络通信设备以及其他办公设备,进行信息的收集、传输、处理、存储和利用,以达到特定目标的人机系统。系统支持的信息活动系统的信息资源组成部分系统的组成信息系统基本涵义处理对象功能应用数据和信息数据反映客观事物的性质、属性及其相互关系的一种表示形式,它可以是字母、数字、甚至图像、声音等各种可以鉴别的符号。数据的形式并不能完全表达其内容,必须经过相应的语义解释。数据经过加工和处理,能够为人所用时,数据成为了信息。信息包含于数据之中的内容和含义,是一个相对抽象的概念。信息是经过加工后的数据,具有特定的意义,它对接收者的决策或行为具有现实或潜在的价值。数据是记录信息的符号载体,信息则是数据语义的内涵表示。1.1.2信息和信息资源信息系统是将对某种应用需求有意义的信息以数据形式进行描述、组织和利用的一种信息利用手段。因此,在一些对信息系统的描述中,数据和信息两个概念常被赋予相同含义,从存储和处理的角度看,它是数据;从管理和利用的角度看,它是信息。2.信息的特性普遍性动态性依附性可传递性共享性可加工性时效性②动态性。客观事物总是在不停地运动和变化,而信息存在于客观事物的运动和变化中,信息的内容和数量不断变化。③依附性。信息依附性又称为信息的寄载性,即信息必须依附在一定的实物上,如依附在声波、纸张、电磁波、磁性材料等物质上。④可传递性。信息的传递性也称为转移性,即信息可以在空间上从一个地点转移到另一地点,或者在时间上从某一时刻保存到另一时刻。信息可以通过多种渠道(政府、组织、团体、朋友等),并采用多种方式(报纸、电台、电视、网络等)进行传递。⑤可共享性。信息可以在相同或不同的时间、地点,为多个使用者所获取、占有和使用,并且不会因被分享而减少。⑥可加工性。加工性也称为变换性,即信息可以变换描述形式,并在信息加工过程中保持或增加一定的信息量。⑦时效性。信息的时效性是指信息在一定的时间内是有价值的,应该出现在需要它们的时刻,过时的信息可能会失去价值。①普遍性。各种各样的事物存在于自然界、人类社会和思维领域并且不断变化,在信息社会的今天可以说事事有信息,时时有信息,处处有信息。信息的价值信息的价值根本体现在对应用需求有用。要注意:√信息的准确性和时效性也是保证信息有价值的基本要素。√信息的价值不能简单依据数据量多少计算,过滥或冗余的信息会降低信息的价值。4.信息资源和信息资源管理信息资源意识是发展信息化的基础信息资源概念狭义地讲,信息资源就是指信息本身,是人类社会经济活动中经过加工处理后的有序化信息的集合,如教务信息、科学技术信息、市场信息、金融信息等。广义地看,信息资源不仅包含信息本身,它包括信息源、信息服务和信息系统。信息搜集和信息系统的目的。与组织中的人员的信息服务需求相关。信息资源本身和信息来源或信息渠道。信息源与实际的管理对象和任务有关。按照信息服务的要求,利用信息技术将信息资源进行处理的方法和工具。与组织采用的计算机和信息技术有关。信息资源管理信息源、信息系统和信息服务构成了信息资源管理的总体。对于组织而言,信息源与实际的管理对象和任务相关,信息系统与组织采用的信息技术相关,信息服务与组织中的人员的信息服务需求相关。信息资源管理就是以最有效的模式管理、利用一个组织的信息资源的各种要素,以支持一个组织能正确、高效地进行管理和决策。信息系统融合了信息、技术和人来满足信息服务需求。因此,它不只是一个单纯的技术系统,而是一个人机系统,可以分为技术组成部分和社会组成部分。1.1.3信息系统的组成1.信息系统的技术组成部分信息系统的技术组成部分是指系统工作的基本硬件和软件环境,主要包括:硬件设备、系统软件及开发环境、数据库、模型库和算法库、信息系统应用软件、信息系统文档。2.信息系统的社会组成部分信息系统的社会组成部分是指信息系统开发和使用过程中的组织或人员,主要包括:组织、最终用户;系统开发者;系统管理者。由于信息系统是一个复杂的人机系统,系统设计者不应该期望机器全权处理一切问题,而是要合理地分析什么工作交给机器做,什么工作由人做比较合适,人和机器如何联系等等,建设人与机器的和谐应用环境。信息采集信息处理信息输出信息存储信息传输信息系统支持的主要信息活动信息管理信息反馈1.1.4信息系统的功能1.1.5信息系统的作用随着信息技术的发展,信息系统不只是辅助业务活动一种技术系统,它还是一种管理理念和竞争战略,是现代企业和组织机构不可或缺的组成部分。信息系统对组织机构的主要影响表现在:提高办事效率,获取竞争优势提高组织机构的管理水平,提高文化氛围信息资源共享,提高决策的科学性1.2信息系统的类型从层次化管理的角度看,一个组织一般涉及三个管理层次:业务层、管理层和决策层,各层次人员面临着不同的管理问题,有不同的信息系统需求,需要不同的信息系统类型提供信息管理和服务支持。(1)业务层业务层人员主要负责组织日常的业务处理工作,工作流程明确,单调重复。该层需要信息系统支持业务处理,替代繁琐的手工重复劳动,提高业务处理效率和准确性。例如:教务系统中教师成绩登记、学生
选课、教务员排课等功能;其他如工资发放、车票订购、档案调阅、超市收银等功能。(2)管理层管理层人员负责计划、管理和调控组织
的业务活动,从而实现组织的短期战略目标。该层要求信息系统结合管理学理论来辅助业
务管理,为管理行为提供信息依据和管理方
法。例如:教务系统中的管理人员通过汇总课程开设和选修情况、教师工作量、教室利用情况等了解教学管理活动中的资源需求和利用情况,以改进教学安排或扩充教学资源;企业内的供应计划管理系统,及时平衡人力、设备、资金、材料等资源条件以获得较好的生产效益。(3)决策层决策层人员负责制定组织的面向中长期的总体发展规划和战略;该层要求信息系统根据历史业务处理信息,得到分析汇总结果或进行趋势预测,从而辅助决策。例如:教务系统中对优培班政策的实施效果评
价;对延迟毕业学生学习状态进行分析,以
便了解关键因素,确定改进教学组织方法等;超市货品的摆放对顾客购买率的影响;利率的变化对新建工厂的投资影响等。1.2.1事务处理系统支持业务层活动的信息系统类型是联机事务处理(OnLine
Transaction
Processing,OLTP)。事务是完成某一特定业务的一个程序逻
辑单元,执行完成后可以保证数据的完整性。1.事务处理系统的结构
OLTP系统结构简单,
一般由数据库和业务处理程序构成。(1)数据库数据库是目前信息系统的基本数据组织方式。数据库是存储在计算机中的有结构的、大量的、共享的数据集合。数据库可以实现对数据资源的统一规划和集中管理,它将经过抽象的业务信息以周密
的数据结构描述并集中成为资源,数据冗余
少,并通过事务逻辑保证数据的完整性、安
全性,支持多用户并发访问。因为集中管理,使应用程序与数据独立,不受存储格式的影
响。(2)业务处理程序业务处理程序完成数据库的访问和数据
处理,实现数据的采集、存储、检索、加工、变换和传输。OLTP系统的信息结构化强,处理步骤比较固定,应用流程明确。业务处理一般包括以下五个阶段:数据输入、数据库查询、数据处理、数据库更新、结果输出或报表生成。2.事务处理系统的特点OLTP系统是辅助完成组织机构业务活动的基础信息系统,一般用于专门性业务,帮助用户减轻处理原始数据的负担,实现日常业务活动的自动化,以提高工作效率和服务质量。例如:教务系统中的学生选课子系统;成绩登记子系统;航空公司的订票系统;银行的存取款系统;宾馆的客房预定与结算系统。由于OLTP系统支持组织机构的日常业务处理,要求系统具有较高的可靠性、一定的实时性、保证数据完整性。OLTP系统一旦出现故障,就有可
能导致组织机构无法正常运作。1.2.2分析处理系统支持管理层活动的信息系统类型是联机分析处理(OnLine
Analytical
Processing,OLAP)。OLAP通过对预先存在的历史数据进行分析来辅助管理和决策。1.分析处理系统的结构OLAP系统一般由数据源、数据仓库、OLAP服务器和前端工具构成。(1)数据仓库数据仓库是整个OLAP系统的核心。数据仓库是面向主题的、集成的、稳定的、反映历史变化的数据集合,用以支持管理决策。数据仓库是一种只读的、用于分析的数据库,它的数据来源可以是多个事务型数据库,也可以是文件。它从大量的历史数据中抽取面向主题决策分析需要的数据,并将其清理、转换为新的存储格式,其突出特点是对海量数据的支持和满足决策分析需要。数据仓库按照数据的覆盖范围可以分为企业级数据仓库和部门级数据仓库(通常称为数据集市)。数据源数据仓库的数据来源,可以是多个事务型数据库,也可以是各类数据文件。OLAP服务器OLAP服务器对分析需要的数据进行有效集成,按多维模型予以组织,以便进行多角度、多层次的分析,并发现趋势。前端工具前端工具主要包括各种报表工具、查询工具、数据分析工具、数据挖掘工具以及各种基于数据
仓库的应用开发工具。其中数据分析工具主要针
对OLAP服务器,报表工具、数据挖掘工具主要针
对数据仓库。2.分析处理系统的特点OLAP系统通过多维的方式对历史数据
进行查询、分析和生成报表,支持复杂的
分析操作,并且提供直观易懂的查询结果。它主要是进行大量的查询操作,对时间的要求不太严格,主要应用在决策支持方面。例如:银行信用卡风险的分析与预测;公司市场营销情况分析;客户的消费模式分析等。1.2.3知识处理系统为决策层提供决策支持服务的信息系统主要是知识处理系统。知识处理就是帮助组织在信息系统中发现、组织、分配和运用知识。知识处理系统的主要技术是数据挖掘,它关注探索性的数据分析,发现未知的信息关系或模式。数据挖掘(DataMining,DM)又称为知识发现,是从存放在数据库、数据仓库或其他信息库中的大量的数据中获取隐含的、未知的、但又具有潜在应用价值的信息和知识的过程。1.知识处理系统的结构数据挖掘系统包括以下三个阶段的工作:数据准备、数据挖掘、结果表达和解释。数据准备:将从各种数据源获得的数据进行清理、选择和集成后放入数据库或数据仓库,将专家提供的知识和规数据挖则存放到知识库。数据挖掘:掘引擎通过一定的分析算法并使用知识库中的规则对数据进行分析,发现数据间潜在的相关性、趋势或模式。结果表达和解释:系统对分析结果评估后以一定的文字、图、表等形式进行表达,用户进一步对结果进行解释,形成有用的知识。数据挖掘的主要分析方法有:①分类。首先从数据中选出已经分好类的训练集,在该训练集上运用数据挖掘分类的技术,建立分类模型,然后按照固定分类对没有分类的数据进行分类。例如对信用卡申请者分类为低、中、高风险。②估计。估计一个连续分布的量值。例如根据购买模式,估计一个家庭的孩子个数,估计家庭的收入。③预测。一般通过分类或估值得出模型,然后用于对未知变量的预测。例如航空公司通过分析客流、燃油等变化趋势,对不同航线制定精细的销售策略。④关联。发现一个事件导致另一个事件的相关性,确定哪些事情将一起发生。例如超市中客户在购买商品A的同时,经常会购买商品B,或在购买A后,隔一段时间会购买B。⑤聚类。聚类是对相似的数据进行分组。聚类和分类的区别是它不依赖于预先定义好的类,不需要训练集。例如一些特定症状的聚集可能预示了一个特定的疾病;对用户手机上网的行为进行聚类分析,通过客户分群,进行精确营销。2.知识处理系统的特点数据挖掘基于数据库与数据仓库、人工智能、数理统计、可视化、并行计算等技术的支持,扩充了OLAP并达到策略管理能力,提供预测性而不是回顾性的模型,获得隐藏的和意外的知识,对决策产生价值。知识处理系统的使用效果直接与数据挖掘分析方法的使用、领域知识库的构建相关。1.3职能信息系统不同类型的组织机构,其职能的划分或管理内容都有很大的差别,需要建设与之相应的职能信息系统。下面介绍几个职能信息系统使读者对信息系统及其应用有更多的认识。1.3.1企业ERP系统ERP是整合企业管理理念、业务流程、基础数据、制造资源、计算机硬件和软件于一体的企业资源管理系统。企业资源包括企业的“三流”资源,即物流、资金流和信息流。ERP系统的主要业务系统包括:销售管理、生产管理、库存管理、采购管理、供应链管
理、客户关系管理、人力资源管理、财务管
理。数据在各业务系统之间高度共享,所有源数据只需在某一个系统中输入一次,保证了数据的一致性。由于对企业内部业务流程和管理过程进行优化,主要的业务流程实现了自动化。基于网络的分布式体系结构,使用户在能入网的地方都可以方便地接入到系统中来。ERP体现现代企业管理思想:对整个企业供应链实施管理,有效地安排企业的产、供、销活动,使它们密切协作形成竞争优势;体现精益生产和敏捷制造的思想,通过不断降低成本、提高质量、增强生产灵活性、实现无废品和零库存等手段保障企业的竞争优势;通过快速组织一个特定的供应商和销售渠道来形成“虚拟工厂”实现敏捷制造抢先占有市场;体现了事先计划与事中控制的思想。2.金融信息系统金融业是信息密集型行业,是最早应用信息系统的行业之一。各大金融机构都已利用先进的计算机手段实现了综合业务系统。例如:城市间的资金汇划、消费结算、储蓄存取款、信用卡交易的电子化、电话银行、网络银行、许多银行开通了环球银行间的财务通信系统,与海外银行建立了代理行关系。自助设备可以包括:自动柜员机ATM(AutomaticTeller
Machine)、自动存款机、自动补登机、多媒体查询机、客户信息打印机、夜间金库、IC圈存机、安全监控系统、外币兑换机等。自助银行是一种由金融机构提供给客户自行操作的无人值守的营业网点。系统工作过程如下:自助设备接受用户请求,形成各种交易数据包并发往业务主机业务主机访问数据库并完成交易,如果交易成功,则数据库中相应的数据信息进行更改;如果交易失败,
则返回错误信息,数据库不做任何修改。每一笔交易要同时记入自助设备的交易数据表,设备运行情况数据记入设备运行情况数据表,以供监控主机查询。银行业务主机返回的代码发送给自助设备,自助设备据此完成最后交易。监控主机监控各类交易和自助设备的运行情况和密钥的改变,保证交易安全,并可根据交易情况分析评估各自助银行的运营效益。1.3.3电子商务系统电子商务系统是指在Internet开放的网络环境下,支持买卖双方在不谋面的情况下进行各种商贸活动,实现消费者的网上购物、商户之间的网上交易和在线电子支付以及各种商务活动、交易活动、金融活动和相关的综合服务活动的一种的信息系统。。它不同于一般组织内部的信息系统,往往涉及消费者、商家、银行、物流、认证中心等多家单位,系统的安全性要求高,系统功能复杂。按交易对象分类BtoB(Business
to
Business)、BtoC(Business
toCustomer)、CtoC(Customer
to
Customer)系统构成网站系统、电子支付系统、客户关系管理系统(CRM)、物流信息系统例:淘宝网业务跨越C2C和B2C1.3.4电子政务系统电子政务是指政府机构在其管理和服务职能中运用现代信息技术,实现政府组织结构和工作流程的重组优
化,超越时间、空间和部门分隔的制约,建成一个精简、高效、廉洁、公平的政府运作模式。我国电子政务系统采用“三网一库”体系。“外网”
“内网”和“专网”,以及建立在该三网平台上进行交
互共享的政府业务信息资源数据库。“外网”是公众信息网,与Internet相连,其上运行的系统面向公众提供信息发布和应用服务;“内网”是指政府部门内部的各类关键业务管理信息系统及核心数据应用系统,也包括办公自动化系统。“专网”是政府部门内部以及部门之间的网络,其信息系统主要支持各类公文、一般涉密数据及政务部门之间的数据交换;各层网络之间有隔离措施,以确保数据安全。我国电子政务系统总体结构图电子政务系统应用我国电子政务重点实施了“金字”工程,目的是建设各行业的信息系统,实现电子化政府。金税工程、金财工程、金贸工程、金关工程、金审工程、金卡工程、金农工程、金水工程、金盾工程、金桥工程、金旅工程、金智工程和金卫工程。办公自动化系统(OAS,Office
AutomationSystem)是电子政务的重要组成部分,也是各组织信息化的基本系统,功能主要包括办公文字处理、办公信息管理和数据处理、工作流管理等。1.3.5地理信息系统地理信息系统(Geographic
Information
System,简称GIS)通过把其他属性数据显示在地图上,并进行编辑、处理、分析、输出和应用等操作,以分析和处理在一定地理区域内分布的各种现象和过程,解决复杂的规划、决策和管理问题。GIS以地理空间数据为操作对象是GIS与其它信息系统的根本区别。GIS采用高度抽象的方法将空间地物或现象抽象成几种基本类型——点、线、面和复合对象,空间、地物间的位置关系采用空间拓扑关系来描述。GIS应用支持高效管理各种空间相关的资源:矿产资源、旅游资源、污染源、自来水设施等提供辅助决策:疾病、林火等突发事件的检测和预警、企业选址、房地产管理等提供和获得与空间位置相关的服务:位置查询、监控和导航等。协助自动化制作地图。例如:百度的交通路线查询调研你身边的一个信息系统,分析其主要功能、用途、系统类型等。课后作业·数据库系统的发展·概念模型和数据模型·关系模型与关系数据库·关系数据库体系结构·关系模型的运算理论简介第2章关系数据库基本知识数据库是信息系统的基本数据组织方式,它将经过抽象的信息以一定的数据结构描述并集中成为资源,支持对这些数据资源进行统一规划和集中管理,实现数据的多用户共享、多应用共享。关系数据库是目前最成熟和应用最广泛的数据库系统。2.1数据库技术的发展Bachman于l
973年获美国计算机协会(ACM)颁发的图第一代数据库系统(20世纪60~70年代灵()Turing)奖。
网状模型数据库和层次模型数据库为代表。实现了数据管理的“集中控制与数据共享”这一基本目标。主要代表产品:1963,美国GE的Bachman等人开发成功世界上第一个网状数据库系统IDS。1969,美国IBM的第一个商品化层次数据库管理系统IMS。1969~1970,美国CODASYL提出了DBTG报告,建立了以网状数据库模型为基础的数据库系统概念。
主要特点:支持数据库三级抽象模型的体系结构;用存取路径(指针)来表示数据间的联系;数据定义语言和数据操作语言相对独立,数据库语言采用过程性导航式语言。所谓导航就是指用户不仅要了解“要干什么”,而且要指出“怎么干”。用户必须使用某种高级语言编写程序,一步一步地“引导”程序按照某一条预先定义的存取路径来访问数据库,最终达到要访问的数据目标。在访问数据库时,每次只能存取一条记录值。若该记录值不满足要求就沿着存取路径查找下一条记录值。导航式的数据操纵其优点是存取效率高。存取路径由应用程序员指定,应用程序员可以根据他对数据库逻辑模式和存储模式的了解选取一条较优的存取路径。从而优化了存取效率。缺点是编程繁琐。用户既要掌握高级语言又要掌握数据库的逻辑结构和物理结构,程序设计很大程度依赖于设计者自己的经验和实践,因而只有具有计算机专业水平的应用程序员才能掌握和使用这类数据库操纵语言。应用程序的可移植性较差,数据的独立性也较差。2.第二代数据库系统(20世纪70~80年代)
20世纪70年代初,关系数据模型的提出,关注和争论。以E.F.Codd为代表的理论研究成果获得肯定。代表产品:1976,IBM公司System
R,并先后推出了SQL/DS(1982年)和DB2(1985年)两个商品化关系数据库系统。1976,美国加州大学Berkeley分校开发INGRES,1981年商品化。1979年美国ORACLE公司推出用于VAX小型机上的Oracle
v2.0,第一次实现使用SQL语言的商品化关系数据库软件。
关系模型建立在严格的数学理论基础之上,它概念简单、清晰,易于用户理解和使用。
20世纪80年代以后逐渐走向成熟。一批商品化关系数据库软件:如Oracle、Sybase、Informix、INGRES、SQL
Server等。3.新一代数据库系统(20世纪80年代以后)随着计算机的广泛应用和信息社会的发展,特别是一些新的应用领域,如CAD/CAM、办公信息系统、地理信息系统、知识库系统、实时系统等,不断提出新的应用要求,上述
传统数据库都表现出不同程度的局限性。新
的数据库需要支持以下一些功能:①存储和处理复杂对象。②支持复杂的数据类型。③具有高性能的处理能力。④支持快捷的应用开发。
“应用驱动”和“技术驱动”相结合形成了新一代进入商业化应用的数据库管理系统的大家族。分布式数据库允许用户开发的应用程序把多个物理分开的、通过网络互联的数据库当作一个完整的数据库看待。并行数据库通过集群技术把一个大的事务分散到集群中的多个节点去执行,提高了数据库的吞吐量和容错性。多媒体数据库提供了一系列用来存储图像、音频和视频对象类型,更好地对多媒体数据进行存储、管理、查询。数据库系统的发展趋势可以归纳为以下三个方面:从数据模型角度看经典的数据库系统有采用层次、网状和关系数据模型的数据库系统,其中关系数据库是应用最广泛的数据库。从技术角度看数据库技术与其他信息技术的有机结合使数据库理论、应用研究都有重大的发展,并且建立了一系列新型的数据库技术。从应用角度看网络环境下的数据库应用尤其是Internet环境下和移动环境下的数据库应用迅速发展。多元化的数据库应用要求,促进了各种专门应用领域的数据库技术发展。2.2数据模型数据模型用来抽象、表示和处理现实世界中的数据和信息,以便于采用数据库技术对数据进行集中管理和应用。一个好的数据模型应能比较真实地模拟现实世界,容易为人们理解并便于计算机表达。数据模型的概念数据库中的基本数据模型数据模型是指构造数据结构时所遵循的规则以及对数据所能进行的操作的总称,是现实世界的模拟和抽象。数据模型设计包括概念模型设计和数据模型设计两个阶段。概念数据模型(概念模型,信息模型)结构数据模型(数据模型)概念模型又称信息模型,是按用户观点将信息模型化。它把现实世界中的具体事物进行认识抽象,形成信息世界中的概念模型,它是不依赖于特定数据库管理系统的一种信息结构。数据模型数据模型是按计算机观点将数据模型化,是机器世界中数据之间关系及其操作的描述。根据概念模型,设计者需将其转换为某一个数据库管理系统支持的数据模型(例如关系模型),形成机器可处理的数据结构模型。2.2.1概念模型
概念模型不依赖于具体的计算机系统和DBMS,它是对要开发的信息系统所涉及的客观对象相关信息的抽象描述,是信息系统分析的有效交流工具,是结构数据模型设计的基础。
典型的概念数据模型是实体联系模型(Entiry-Relationship
Data
Model,简称E-R模型),实体联系模型采用“实体—联系”图来表示,简称E-R图。
E-R图的最大优点是比较简单、有效和灵活,对于技术和非技术人员来说都可以很快地学会和使用,并可卓有成效地针对数据需求进行讨论,辅助技
术开发人员和最终用户间沟通的沟通。E-R图E-R图主要包括实体、实体的属性和实体间的联系。实体:是指现实世界客观存在并可相互区别的事物,例如学生实体。在E-R图中,实体用矩形表示,中间书写实体名。属性:是实体中每个成员具有的特性。例如,
在学生实体中,性别属性的域为{“男”,“女”}。在E-R图中,属性用椭圆形表示,中间书写属性名,并用直线连接到相关的实体。关键字:可以唯一标识实体的一组最小的属性
集合称为关键字。例如,学号是学生实体的关键字。在E-R图中,关键字属性用下划线表示。(4)联系:是实体之间的一种关联。联系也可以具有属性。例如,学生选课是一个联系,反映了学生实体与课程实体的一种关联,成绩可作为学生选课联系的一个属性。在E-R图中,联系用菱形表示,中间书写联系名,并用直线将它与关联的实
体相连接。在E-R图中,联系的类型有三种:一对一联系(1:1):实体A中的每一个成员最多与实体B中的一个成员相关联,反之亦然。一对多联系(1:n):实体A中的每一个成员可以与实体B中的多个成员相关联,反之,实体B中的每一个
成员最多与实体A中的一个成员相关联。多对多联系(m:n):实体A中的每一个成员可以与实体B中的多个成员相关联,反之,实体B中的每一个成员也可以与实体A中的多个成员相关联。学校教务管理中的几个E-R图一对一联系学生实体与优培生实体的联系是一对一的联系,因为一个学生最多只能被选拔为优培生一次,而一个优培生只能对应一个学生。其他例子:班长实体和班级实体
主教练实体和球队实体某场电影的观众和座位……其他例子:单位实体和职工实体大楼实体和房间实体……一对多联系班级实体与学生实体的联系是一对多的联系,因为一个班级中有若干个学生,而每一个学生只属于一个班级。多对多联系学生实体与课程实体的联系是多对多的联系,因为一个学生可以同时选修多门课程,而一门课程可以被多个学生选修。其他例子:供应商实体和商品实体电影实体和演员实体……结构数据模型(简称数据模型)由概念模型转换获得,是能被计算机处理直接处理的数据模型。结构数据模型由数据结构、数据操作和数据完整性约束三部分组成,是严格定义的一组概念的集合,这些概念精确地描述了系统的静态特性、动态特性和完整性约束条件。2.2.2数据模型数据结构:是对所关心的数据对象及其相互关系的描述。数据结构规定了如何把基本的数据项组织成较大的数据单位,以描述数据的类型、内容、性质和数据之间的相互关系。数据结构是对数据模型静态特性的描述数据操作:是指对数据库中各种对象(如关系模型中的关系)的实例(即值)允许执行的操作的集合,包括操作及其有关的操作规则。数据库中的操作主要有检索和更新两大类。数据模型需要定义这些操作的确切含义、操作符号、操作规则(如优先级)以及实现操作的语言。数据操作是对系统动态特性的描述。数据操作是对数据模型动态特性的描述数据完整性约束:数据完整性约束条件是一组数据完整性规则的集合。数据完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定基于数据模型的数据库的状态以及状态的变化,以保证数据库中数据的正确、有效和相容。数据完整性约束是对数据模型中数据状态转换时制约关系的描述。·
在数据库领域中应用的数据模型有:层次模型(树)网状模型(图)关系模型(表)面向对象模型(对象)以相关模型为基础开发的数据库管理系统分别为层次数据库、网状数据库、关系数据库、面向对象数据库等。层次模型
层次模型将实体之间联系描述为称树状。下面为一模型和数据组织实例。网状模型网状模型将实体之间联系描述为图。它比层次模型提供更大的灵活性,但在概念上、数据结构上都更复杂,编程较复杂,操作上也有诸多不便。下图为一网状模型举例。关系模型关系模型中实体以“表”的形式来表现。表的每一行描述实体的一个实例,表的每一列描述实体的一个特征或属性。这种表格在数学上称为关系。实体间的联系通过表的公共属性来描述。下面是一个建立了联系的学生表和班级表。多个表以及它们之间的联系,就构成了一个数据库。该数据库中包含6张表,分别描述学生、班级、课程、教师、选课、优异生6个实体,可以支持实现一个简单的教务管理系统。关系模型具有许多优点,主要有:以关系代数和数理逻辑为数学基础,经过多年发展,形成了严密的关系数据库理论。数据结构简单、清晰,概念单一,即无论实体还是实体之间的联系都用关系(即表)来表示,对关系数据的检索结果也是关系。存取路径对用户透明,从而具有更高的数据独立性,更好的安全保密性,也简化了程序员的工作和数据库建立的工作。
关系模型的缺点主要由于存取路径对用户透明,查询效率往往不如非关系数据模型。因此为了提高性能,必须对用户的查询请求进行优化。以关系模型组织的数据库系统称为关系数据库系统,它最为成熟,例如Oracle、Sybase、Informix、INGRES、SQL
Server等关系数据库管理系统广泛应
用于信息系统建设。关系数据库是以关系模型为基础的数据库。它与层次数据库、网状数据库相比,具有数据模型简单灵活、数据独立性高、语言接口性能好等优点,并且有着比较坚实的数学理论基础,是目前最成熟的数据库。关系模型由关系数据结构、关系操作集合和数据完整性约束三部分组成。2.3关系模型与关系数据库1.基本表结构表:关系模型的数据结构单一,采用二维表结构来表示实体和实体之间的关系。一个关系对应于一张二维表。属性:表中每一列(也称字段、数据项)描述实体集的某个特征,在关系数据库中被称为属性;每一个属性都有自己的取值范围,称为域。元组:表中的每一行由一个实体的相关属性取值构成,称为元组,它相对完整地描述了一个实体。一个元组在关系数据库中也被称为一条记录。元组中的一个属性值称为分量。字段名称类型定义属性限定学号Char(4)Primary
Key认定时间smallDateTimeNot
Null学分积点Numeric(3,1)>=3.5
and
<=5【例2-1】优异生表分量属性(字段)记录注意:关系是二维表格,但这个二维表格是有限制的:①表中的每一属性必须是基本数据类型。例如整型、实型、字符型等,数组或结构等不能作为属性的类型。②表中的每一列的所有值必须是同类型、同语义的。例如表中的某一列包含学生的学号,则此表中所有行的此列都必须是学生的学号。③属性的值只能是所规定的域中的值。例如规定工资表中基本工资是正数,那么任何一个职工的基本工资都只能是正数;规定学生的性别只能在“男”或“女”中取值。④表中的每一列都必须有唯一的名字,但不同的属性值可以出自相同的域,即它们的分量可以取自于同一个域。列在表中的顺序可以任意交换。⑤表中任意两个元组的值不能完全相同,即不允许有重复的行。行在表中的顺序可以任意交换。⑥表中的每一个分量必须是不可分的数据项,不允许出现“表中有表”的现象。【例2.2】一个表中不同的属性具有相同域。【例2.3】表中每一个分量都是不可分的数据项。不可出现“表中有表”的现象。×
√职业与兼职取自同一个域集合:职业={教师,工人,辅导员,作家}。√修改为在一个关系模式中,关键字是保证表中记录具有唯一性的一种机制。(1)候选关键字也称候选码,是关系表中按应用语义能唯一标志元组的最小属性的集合。在最简单的情况下,候选关键
字只包含一个属性。在最极端的情况下,关系模式的
所有属性组是这个关系模式的候选关键字,称为全码。2.关键字例如:以上学生表中,“学号”是候选关键字,“身份证号”也是候选关键字,如果规定学生不允许重名,那么“姓名”也是候选关键字。(2)主关键字主关键字(Primary
Key)也称主键,用户指定的用来在关系表中唯一标识元组的一个候选关键字。若一个关系有多个候选关键字,则只选定其中一个为主关键字。主关键字的值不能为空、不能重复。提示:一般情况下,为每个关系表都要定义主关键字,以保证任意两行数据不完全相同。在选课表中,属性集合(学号,课号)是候选关键字。【例2.4】主关键字的唯一性语义:学生表的主关键字的选择。学生表中,有3个候选关键字:“学号”,“身份证号”,“姓名”。可以从其中选择任何一个做主关键字。那选哪个呢?“姓名”做主关键还是有些限制(不能重名);“身份证号”太长,使用不方便;“学号”简洁,使用方便,在实际生活中也被用来唯一区分学生,所以该表选“学号”作主关键字最合适。【例2.5】主关键字可以是一个属性组:选课表的主关键字选择。该表的候选关键字只有一个(学号,课号),所以别无选择,只能用它做主关键字!注意:候选关键字和主关键字可以唯一标识一条记录,它可以是一个属性,也可以是多个属性组成的属性组,由用户根据语义定义。想一想,如果需要在表中记录多次补考成绩,如何修改表,关键字如何设置?现实世界中的事物是相互联系的,这种联系需要通过数据模型体现出来。联系可分为两种:实体内部的联系,它反映了不同属性之间的联系,这在表的关系模式中已经被定义和体现。例如,一个学号确定了一个学生的姓名。实体之间的联系,在概念模型中采用
E-R图描述,反映到关系模型中就是表和表之间的关系。3.表之间的关系在关系数据模型中表和表之间的关系通过连个表的公共属性来实现。例如:学生表和班级表通过公共属性“班号”建立了一对多的关系。在设计数据库和数据表时,可把复杂的事物进行分解,建立多个表来描述,并通过表之间的关系使信息仍保持整体的逻辑结构。在多表间提取相关信息。例如,要查询学生“林豆豆”的班级名称,可先从学生表中查出她的班号是“11”,然后根据班号“11”在班级表中查出对应的班级名称“数学01”。建立表之间的约束,维护数据的完整性和一致性。例如,学生表的“班号”取值必须是班级表中“班号”的存在值。这样可保证不出现没有班级信息的学生。减少数据存储冗余。例如,一个班级的有关班级信息只需在班级表中存储一次,而不必在学生表中反复存储。表之间关系的作用两个表具有能体现实体实际存在关系的公共属性。例如,学生表和班级表有实际含义相同的公共属性“班号”。该公共属性至少在其中一个表中是主关键字。例如,“班号”在班级表中是主关键字。两个表建立关系的一般原则外关键字一个表中的主关键字与另一个表中与该主关键字相同的属性建立联系,这个起到联系作用的属性,称为另一个表的
外关键字,简称外键。例如,“班号”是学生表的外关键字。主表和外表当两个表关联后,用于建立联系的公共属性作为主关键字所在的表称为主表,另一个表称为外表。例如,在下两个表建立关系的相关概念面关系中,班级表是主表,学生表是外表。用连线指示了两个表之间的关系,连线有箭头一端的表为主表,主表中用于建立关系的属性是主关键字;连
线另一端是外表,外表中用于建立关系的属性是外关键字。主表外表【例2.6】班级表和学生表之间的一对多关系。学生实体和班级实体存在着属于关系,一个班级由多名学生构成,任何一个学生都属于且仅属于某一个班级。它们通过“班号”可建立一对多关系。提示:建立关系的公共属性只是其中一个表的主关键字时,建立的一定是一对多关系。的一个子集,而且一个学生只能被选拔一次。它们的共同属性是“学号”,可以用来建立一对一关系。主表外表提示:1)主表对外表的限定作用要强于外表对主表的限定作用,根据实际的关系分析,选择一般性、主导性信息所在的表作为主表比较合适。2)当外键也是外表的主键时,即建立关系的公共属性在两个表都是主关键字时,建立的一定是一对一关系。【例2.7】学生表和优培生表之间的一对一关系。学生实体和优培生实体有包含关系,优培生是学生【例2.8】教师表和课程表之间的一对多关系。教师实体和课程实体之间存在授课关系。它们没有名字相同的属性,但教师表中的属性“工号”和课程表中的属性“任课教师”,数据类型和含义相同,且“工号”在教师表中是主关键字,可以用这对属性建立一个一对多关系,教师表是主表,课程表是外表。主表外表【例2.9】如何描述学生表和教师表之间的关系?学生实体和教师实体之间存在师生关系(任课、指导教师、班主任等)。以上结构的表直接建立关系无意义,可以选择以下设计表达以上某种师生关系:①任课关系。通过学生表和课程表之间的关系、以及教师表和课程表之间的关系,可以找到任课教师信息。②指导教师关系。可以在学生表中增加一个属性“工号”,用来记载该生的指导教师,然后利用“工号”来建立学生表和教师表的关系。③班主任。在班级表中增加一个属性“工号”,用来记载该班的班主任,然后在班级表和教师表之间建立关系。由于学生表和班级表之间已经建立了关系,在应用中,用户可以间接获得这种师生关系信息。尽管数据库中的各个表是独立的,但是表与表之间可以通过外关键字建立相互联系,从而构成一个整体的逻辑结构。从上图还可以看出,除了外关键字和一些必需的属性外,这些表中尽可能地减少了数据冗余。表中的行定义(即表头)是实体相关属性的集合,称为该表的关系模式。关系模式就是对关系的描述,包括关系名、组成该关系的属性名、属性向域的映象。关系模式通常记为:关系名(属性名1,属性名2,…,属性名n)属性向域的映象直接说明为属性的类型、长度。4.关系模式在教务系统数据库中几个关系模式表示如下,其中加下划线的属性是主关键字:学生(学号,姓名,性别,出生日期,班号),班号是外键(班级:班号)优培生(学号,认定时间,学分绩点),学号是外键(学生:学号)班级(班号,班名,专业)课程(课号,课程名,学分,任课教师),任课教师是外键(教师:工号)选课(学号,课号,成绩),学号是外键(学生:学号),课号是外键(课程:课号)教师(工号,姓名,性别,进校日期,职称)属性名称属性说明类型定义属性限定关系(外键)学号学生代号Char(4)PrimaryKey学生表:学号课号课程代号Char(3)PrimaryKey课程表:课号成绩课程成绩Numeric(4,1)关系模式确定后,在数据库物理设计阶段可以
用表格来直观地详细描述关系模式的定义。每一个
被定义的关系模式包括关系名、属性名,以及属性
域的类型和约束、关系模式的主关键字和外关键字。学号”的类型为长度为4的字符串;“课号”是长度为3的字符串;“成绩”为精度为4且保留1位小数的数值型。该表的主关键字为(学号,课号);该表通过“学号”与学生表建立关系,是学生表的外表,该表通过“课号”与课程表建立关系,是课程表的外表。【例2.10】选课表的关系模型的表格描述。2.3.2关系完整性约束数据库必须保证所有表中的数据值与其所描述的应用对象的实际状态保持一致。关系模型通过关系完整性约束条件来保证数据的正确性和一致性。所谓约束条件主要是指在表和列上定义的规则,数据库管理系统会依据这些约束条件维护数据完整性。域完整性规则实体完整性规则参照完整性规则1.域完整性域完整性规定了属性的值必须是属性值域中的值。域完整性又称为用户自定义完整性。它是在关系数据模型定义时,由用户对属性列值的数据类型、长度、单位、精度、格式、值域范围、是否允许为“空值”等进行限定。所谓“空值”就是“不知道”或“无意义”的值。应当注意,空值不等于数值零,也
不等于空字符或空字符串。例如,没有成
绩与成绩为零分显然是不同的。【例2.15】表的域完整性规则应用。(a)学生表
(b)学生表关系模式定义关系数据库系统的域完整性的检查功能,会依据用户设置的规则限制不合法数据的填入,不需应用程序承担检查工作。2.实体完整性实体完整性是指关系中的元组在组成主关键字的属性上不能有空值且主关键字的值不能相同。要注意实体完整性规则是针对基本关系表而言的。实体完整性主要是为了保障主关键字能唯一标识关系中的每个记录。大多数关系数据库都支持实体完整性检查,如果表中定义了主关键字,系统将进行强制检查。【例2.14】表的实体完整性规则应用。学生表中,“学号”是主关键字。假定向学生表新加一条学生“王秋水”的记录系统拒绝该记录的添加,因为它违反了实体完整性规则,即学生表中已存在一条主关键字取值为“1103”的记录。11031996-03-04213.参照完整性参照完整性要求一个外表的外关键字的取值必须是其主表主关键字的存在值或空值。因为数据库的表之间并不是完全不相关的,甚至有些属性字段在多个表中重复出现,为了保证数据完整性,需要对表之间的数据进行约束。参照完整性是在表之间关系的基础上实施的表之间的数据约束。【例2.15】表的参照完整性规则应用。在学生表和班级表建立关系后,学生表中“班号”是外关键字,它的取值必须是空值或在班级表中“班号”属性中出现过的值。如果学生表的班号字段允许为空,它取空值表示该学生还没有确定班级;否则只能取班级表出现过的班号值,即班级表中有该班级的记录。对数据库进行修改时,可能会破坏表之间的参照完整性,所以为了保证数据库中的数据的完整性,应该对数据库的修改加以限制,这些限制包括:插入约束、删除约束和更新约束。(1)插入约束:当在外表中插入新记录时,必须保证其中的外关键字值在主表中出现过。【例2.16】表的参照完整性的插入约束。向学生表中添加一个学生“王秋水”的记录。880
1994-1-1
881插入约束会拒绝该记录的添加,因为班级表中不存在“班号”是“88”的班级,该记录违反了参照完整性规则。(2)删除约束:当要从主表中删除一条记录时,必须考虑外表数据的完整性。一般有两种约束。
一是限制删除,即如果系统检查该记录的主关键字值在某个外表中出现过,则不允许删除。
二是级联删除,即如果系统检查该记录的主关键字值在某个外表中出现过,则在删除主表中该记录的同时,将外表中与主关键字值对应的记录全部删除。【例2.17】表的参照完整性的删除约束。删除班级表中“班号”是“11”的记录限制删除:不允许删除;级联删除:同时删除学生表所有中“11”班的学生。(3)更新约束:如果要修改主表中的主关键字值,必须考虑外表数据的一致性。一般有两种约束。一是限制更新,即如果系统检查该记录主关键字值在某个外表中出现过,则不允许更新。二是级联更新,即如果系统检查该记录主关键字值在某个外表中出现过,则在更新主表中该记录的同时,将外表中与主关键字值对应的记录的外关键字值全部更新。【例2.18】表的参照完整性的更新约束。欲将班级表中“班号”是“11”的记录的班号更改为“88”。限制更新:不允许更新;级联更新:同时更新学生表所有中“11”为“88”。
通过以上例子的分析可以发现,保证数据的一致性和完整性对数据库是至关重要的。在数据库设计时,必须充分考虑和应用关系完整性规则,以避免产生数据的不完整和不一致,给应用带来困难。完整性约束也可以大大减少垃圾数据在数据库中的堆积。合理地利用关系完整性规则还可以简化应用程序开发,因为有些数据可以通过关系由数据库系统自动维护。
目前多数关系数据库都提供了比较完善的约束机制。只要用户在定义数据库时定义好约束规则,数据库管理系统会自动维护这些完整性约束来保证数据的完整性和一致性。练习题在数据库中有如下图所示的两个表,若职工表的主键是职工号,外键是部门号,部门表的主键是部门号。在如下数据库操作中,不能成功执行的是
。A)从职工表中删除行('025','王百万','03',2900)B)将行('005','乔兴','04',750)插入到职工表中C)将职工号为“001”的工资改为5700D)将职工号为“003”的部门号改为'03'2.3.3关系操作
关系数据模型的数据操作是以关系代数和关系演算为理论基础的。关系表可以看作是记录的集合。传统的集合操作包括并、交、差、广义迪卡儿积等,这些集合操作对应了数据库针对行的基本操作。关系模型还专门定义了针对列的操作包括选择、投影、连接等。所有这些操作的结果,仍然是
一个集合。
本书在2.5节介绍关系数据库操作的有关理论基础。在关系模型各种操作运算的支持下,关系数据库主要支持以下一些针对关系表的操作(查、插、删、改):•插入:在一个表中插入一条或多条新记录。•删除:从一个表删除一条或多条满足条件的记录。•修改:在一个表中修改满足条件的记录的某些字段的值。•查找:从一个或多个表中提取满足条件的数据、生成计算列或汇总数据。关系数据库基本操作关系数据库操作语言
关系数据库的基本操作语言是SQL(StructuredQuery
Language)。
SQL语言以简洁的语法支持数据库的各类操作
(查、插、删、改)。
SQL语言独立于数据库本身,独立于使用的机器、网络和操作系统。2.4关系数据库体系结构2.4.1关系数据库体系结构从数据应用的角度来看,使用数据库有4类人员:用户、应用程序员、系统分析员和数据库管理员。由于他们对数据库的认识、理解和接触范围各不相同,从而形成了各自的数据库视图。根据各类人员与数据库的不同关系,可把视图分为
3种:对应于用户和应用程序员的外部视图;对应于系统分析员以及数据库管理员的逻辑视图;对应于数据库管理员的内部视图。由此形成数据库的三级模式结构,即:外模式:数据库的局部视图逻辑模式:数据库的全局逻辑结构内模式:数据库的存储结构用户和应用程序员视图系统分析员&数据库管理员数据库管理员数据库应用1应用2应用3应用4外视图A外视图B…………外模式B外模式A逻辑视图内视图逻辑模式内模式1.模式模式又称逻辑模式,对应于一个应用的所有关系模式的集合以及关系完整性约束、所允许的关系操作。它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图。它是系统分析员以及数据库管理员所看到的全局数据库视图。一个数据库只有一个逻辑模式。逻辑模式可以采用数据定义语言DLL描述。教务系统数据库的关系图,反映了教务系统数据库的逻辑模式的概要信息。2.外模式外模式又称子模式或用户模式,对应于用户级,是某个或几个数据库用户和应用程序员所看到的数据库的局部数据视图。外模式是从模式导出的子模式,可以利用数据操纵语言DML对外模式进行操作。一个数据库可以有多个外模式。一个外模式只是用户的一个视图,只是关系模式的一个局部,是数据库的子模式。关系模型的外模式除了指出某一类型的用户所用到的数据外,还要指出这些数据与关系模式中相应数据的关系,即要指出关系模式与外模式之间的变换。外模式可以通过定义“查询”或“视图”从“基本关系模式”导出。“查询”是根据指定条件对基本表进行查询所得的结果表,是临时表,虽然是实际存在的表,但数据也是来自基本表,且一般不再使用,具有一次性和冗余性的特点。“视图”是为了方便查询和处理而设计的数据虚表,在数据库中只存储结构的定义,而没有存储对应的数据,数据来自数据库中的基本表。【例2.19】从学生表变换得到学生生日视图。如果只对学生表中的“姓名”和“出生日期”感兴趣,可定义子模式:学生生日(姓名,出生日期),则形成一个视图,从模式“学生
表”导出子模式“学生生日”的变换如图所示。【例2.20】从学生表、课程表和成绩表变换得到学生成绩子模式。如果希望获得分布在三个表中的三个字段“姓名”,
“课程名”和“成绩”,可定义子模式:学生成绩(姓名,课程名,成绩),从模式“学生表”、“课程表”
和“选课表”导出子模式“学生成绩”的变换如图所示。3.内模式内模式又称存储模式,是全体数据库数据的机器内部表示或存储结构描述,是真正存放在外存储器上的物理数据库,它描述了数据记录、索引、文件的组织方式和在存储介质上的物理结构。内模式是数据库管理员创建和维护数据库的视图。一个数据库只有一个内模式。内模式主要关注以下问题:(1)关系存储数据库逻辑结构中的关系模式与系统平台无关,但数据库存储模式必须考虑具体的计算机系统和所选定的DBMS,采用它们所支持的数据类型描述和完整性约束规则来定义数据表,并选取DBMS所支持的数据库文件结构存储方法,设计数据库文件的存储位置。(2)关系存取在数据库管理系统中,关系表中的数据按记录存储。为了提高对数据记录的查询效率,通常采用索引方法来建立数据记录的存取顺序。索引与书的目录或字典检字索引的原理是一样的。数据库管理系统一般集成了多种复杂的快速查找算法,但这些算法基本上都是以数据记录排序为前提的。①索引的概念索引是由一个表中的一列或者若干列的值与其对应的记录在数据表中地址所组成。数据库中一个表的存储由两部分组成:数据页面和索引页面。创建索引的目的是为了改善查询性能、加快依据索引字段对表中数据行的检索、强制保持表的数据唯一性等。索引虽然能改善查询性能,但也耗费了磁
盘空间,并且当对数据表进行数据增加、修改
或删除时,系统需要花费一些时间来维护索引,所以通常不在一个表上建立太多索引,也不建
立不常使用的索引。一般来说,需要在下面这些地方建立索引:在主键和外键上创建索引。在检索频繁的字段上建立索引。在经常需要排序的字段上建立索引。②索引的分类
1)聚集索引聚集索引是对表中的数据行按指定索引字段值进行排序后再重新存储到磁盘上,使数据表的物理顺序与索引一致。聚集索引的优点是它的检索速度比非聚集索引快。缺点是聚集索引重组了表的物理顺序,维护索引的时间和空间消耗都比较大。每个表只能建立一个聚集索引。2)非聚集索引非聚集索引具有完全独立于数据行的结构,建立非聚集索引不需要将数据表中的数据行按索引字段值重新排序。非聚集索引的优点是不需要改变数据行的存储顺序,而且可以建立多个非聚集索引。4.数据库的三级模式的关系数据库的三级模式是数据模型在三个级别的抽象,使用户能够逻辑地、抽象地处理数据而不必关心数据在计算机中的表示和存储,把数据的具体组织交给数据库管理系统。为了实现三个抽象层次间的联系和转换,数据库管理系统在三个模式间提供了两级映象,这两级映像保证了数据的独立性:①外模式/模式的映象②模式/内模式的映象①外模式/模式的映象。保证了数据的逻辑独立性,即当数据库
的逻辑结构发生变化时,可通过调节外模式
与模式间的映象关系,从而保证外模式不变,那么建立在外模式基础上的应用程序也不变。例如,有关系学生(学号,姓名,性别,年龄,专业),并为计算机专业学生建立了外模式CS学生(学号,年龄),应用程序中根据外模式“CS学生”编写。在后期将“年龄”字段改为“出生年月”。这时只要通过调整从模式/外模式的映像就可以保
持外模式不变,即原来外模式中“年龄”直接从学生关系中获得,改为外模式中的“年龄”通过“出生年月”计算得到。外模式不变,建立在外模式上的应用程序也不用修改,这样,就实现了数据的逻辑独立性。②模式/内模式的映象模式/内模式的映象保证了数据的物理独立性,即当数据的存储结构发生变化时可以通过调节模式/内模式之间的映像关系从而保证模式不变。因为模式不变,外模式也就不变,建立在外模式上的应用程序也不变。例如:学生关系的存储位置、存取方式发生的变化,可以通过调整模式/内模式之间的映像关系从而保证模式不变。2.4.2一个教务系统关系数据库1.教务系统数据库的逻辑模式教务系统数据库的逻辑数据库结构
各个表的数据库物理结构设计如教材中表~2.6所示。关系数据模型的数据操作是以关系代数和关系演算为理论基础的。关系演算是和关系代数等价的关系运算数理逻辑表示方式。了解关系模型的数学基础,对于理解关系模型、设计数据模式和实现应用很有帮助。下面简单介绍:关系定义关系运算2.5关系模型的运算理论简介2.5.1关系定义在关系模型中,无论是实体还是实体之间的联系均由单一的结构类型即关系(二维表)来表示。下面首先以关系代数中的集合理论引出关系定义。域是一组具有相同数据类型的值的集合。例如,非负整数、整数、实数、长度小于25字节的字符串集合、[0,1]、大于等于0且小于等于100的正整数等都可以是域。【例2.21】有下列三个集合表示的域。D1={陈佳迪,徐瑶琪},表示学生的集合;
D2={男,女},表示性别的集合;D3={上海,浙江,山西},表示籍贯的集合。1.域姓名性别籍贯陈佳迪男上海陈佳迪男浙江陈佳迪男山西陈佳迪女上海陈佳迪女浙江陈佳迪女山西徐瑶琪男上海徐瑶琪男浙江徐瑶琪男山西徐瑶琪女上海徐瑶琪女浙江徐瑶琪女山西给定一组域D1,D2,…,Dn(这些域中可以有相同的域),则定义D1,D2,…,D
n的笛卡儿积为:D1×D2×…×Dn={(d1,d2,…,dn)|
di∈Di,i=1,2,…笛卡儿积得到的也是一个集合,这个集合中的每一个元素称为一个
n元组,简称元组。元组中的每一个di称为元组的一个分量,分别取自相应的集合Di。【例2.22】例2.21中三个域的笛卡儿积。其中每个元素是个3元组。2.笛卡儿积笛卡儿积D1×D2×…×Dn的任意一个子集称为D1,D2,…,Dn上的一个n元关系,通常用R(D1,D2,…,Dn)表示,这里R为关系名,n是关系的度。所以关系也是一个集合,它的元素为元组,通常用R表示。关系可以直观地用一个二维表表示,表的每一行对应一个元组,表的每一列对应一个域。由于域可以相同,为了加以区分,应
对每列起一个名字,称为属性。显然,n元关系必有n个属性。【例2.23】从例2.22中笛卡儿积来构造一个关系。从笛卡尔积中选取有意义的元组构成的子集,获得名为“学生”的关系模式,记为:学生(姓名,性别,籍贯)。其中,学生为关系名,姓名、性别、籍贯均为属性名。姓名性别籍贯陈佳迪男上海徐瑶琪女浙江3.关系关系代数是以集合为基础的各种运算,可以支持对数据库的操纵要求,也是关系数据库操纵语言的理论基础。通常这类关系运算包括传统的集合运算和面向数据库的专门关系运算。2.5.2关系运算参加运算的集合都以元组(记录)作为它的元素,其运算是从“水平”的角度,即从行的角度来进行的。这些运算都是二元运算,由两个关系产生一个新的关系,主要包括并、交、差和笛卡儿积。如果关系R和关系S具有相同的关系模式或相容(相容指两个关系含有相同属性结构,且对应属性的值域相同),则可进行并、交、差、笛卡尔积运算。例如表R与表S关系模式相同:1.传统的集合运算文学社表R合唱团表S(1)并运算关系R和关系S的并运算形式化表示为:并运算由属于R和属于S的所有元组组成,其结果关系的属性的个数与R或S相同。并运算实现了数据记录的合并,即表的插入操作。【例2.22】文学社表和合唱团表的并运算。文学社表R合唱团表S(2)交运算关系R和关系S的交运算形式化表示为:交运算结果由既属于R又属于S的元组组成,其结果关系的属性的个数与R或S相同。交运算获得两个关系中相同的记录。【例2.23】文学社表和合唱团表的交运算。文学社表R合唱团表S(3)差运算关系R和关系S的差运算形式化表示为:差运算由属于R但不属于S的元组组成,其结果关系的属性的个数与R或S相同。差运算实现了从表中删除记录的操作。【例2.24】文学社表和合唱团表的差运算。文学社表R合唱团表S(4)广义笛卡儿积广义笛卡儿积也是双目运算,但和并、交、差运算不同,它不要求参加运算的两个关系模式相同或相容。关系R和关系U广义笛卡儿积运算形式化表示为:一个n列的关系R和一个m列的关系U的广义笛卡儿积是一个(n+m)列元组的集合,元组的前n列是关系R的一个元组,后m列是关系U的一个元组。若关系R有k1个元组,关系U有k2个元组,则关系R和关系U的广义笛卡儿积有k1*k2个元组。广义笛卡儿积运算获得两个关系中记录的联接。文学社表R课程表U【例2.25】文学社表和课程表的笛卡儿积运算。2.专门的关系运算这种运算是为关系模型而引进的特殊运算。它主要是从列的角度即属性的角度来进行的,但有时也会对行有影响。专门的关系运算主要包括选择、投影、联接等。文学社表R(1)选择选择操作是一元运算,它在关系中选择满足某些条件的元组,即在表中选择满足某些条件的行。关系R关于选择条件F的选择操作记为:选择结果的关系模式与原关系模式相同,只是数据是原数据的子集。选择操作实现了关系的水平分割,支持根据条件查询数据记录。【例2.26】文学社表的选择运算:找出所有男学生。(2)投影投影操作是一元运算,它在关系中选择某些属性。关系R是k元关系,在其分量集合A的投影操作记为:文学社表R投影结果的关系模式是原关系模式的子集,实现了关系的垂直分割。投影操作实现了查询包含部分属性数据记录的集合。【例2.27】文学社表的投影运算:查看成员的姓名和性别。(3)联接联接操作是二元运算,指从两个关系的笛卡尔积中选取满足一定条件的元组。联接运算实现了针对多表的查询操作。【例2.28】文学社表R和课程表U的联接运算。文学社表R课程表UR和U等值联接(联接条件为:R.学号=U.学号)R和U自然联接(等值联接结果去掉重复属性)在联接运算中,联接条件中的属性称为联
接属性。两个关系中的联接属性应该是可比的,即是同种数据类型,如都是数字型或字符型。联接条件中的运算符可以是=,>,>=,<,<=,<>,当此运算符取“=”时,称为等值联接。如果等值联接中联接属性为相同属性(或属性组),而且在结果关系中去掉重复属性,则此等值联接称为自然联接。第3章关系数据库的创建与维护SQl
Server
2005概述SQL
Server数据库组成数据库的创建和维护数据库的创建和维护数据表的创建和维护数据表约数和数据完整性控制索引的创建和维护3.1Microsoft
SQL
Server
2005概述Microsoft
SQL是Microsoft公司在Windows平台上开发一个高性能关系数据库管理系统。它支持
关系数据库的创建和管理。可以应用在网络环境
下客户机/服务器、浏览器/服务器结构的信息系统中,作为支持联机事务处理系统、联机分析处理
系统的数据库服务器。类似地,还有很多商用数据库管理系统,例如
Oracle公司的Oracle,IBM公司的DB2等也经常用于建设大规模的信息系统。还有,桌面型数据库管理系统,例如Microsoft公司的Foxpro,Access等,可用于构建小型信息系统。
数据库管理系统(DataBase
Management
System,DBMS)是数据库系统的一个重要组成部分,是位
于应用程序与操作系统之间的一层数据管理软件。
数据库应用程序提出数据操作要求,通过
DBMS,才能访问数
据库。
数据库管理员也是通过DBMS对数据库实
施管理。DBMS是创建和使用数据库必不可少的软件!什么是数据库管理系统?(1)数据定义(2)数据操纵数据库管理系统的主要功能建立数据库,定义数据库的模式结构、数据库的完整性约束规则和安全性控制方式实现对数据库中数据的检索以及更新(包括插入、删除和修改)数据库运行管理包括并发控制、安全性检查、完整性约束条件的检查和执行、数据库的内部管理和维护数据库维护数据库的备份和恢复、导入和导出功能,数据库的重
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年琼台师范学院单招职业技能测试题库附答案详解
- 2026年廊坊职业技术学院单招职业适应性测试题库及完整答案详解1套
- 2026年厦门工学院单招职业倾向性考试题库含答案详解
- 2026年上海兴伟学院单招职业技能考试题库及参考答案详解
- 2026年桐城师范高等专科学校单招职业倾向性考试题库及参考答案详解一套
- 2026年伊犁职业技术学院单招综合素质考试题库及完整答案详解1套
- 2026年贵州航天职业技术学院单招综合素质考试题库带答案详解
- 2026年天津机电职业技术学院单招职业倾向性测试题库及参考答案详解
- 2026年内江卫生与健康职业学院单招职业技能考试题库参考答案详解
- 2026年桂林山水职业学院单招职业适应性考试题库参考答案详解
- 企业安全生产法律法规知识培训课件
- 三方比价报告范文
- 【粤教版】六年级上册第三单元 第2课《 空气动力车模型》课件
- 神话故事民间故事《劈山救母》绘本课件
- 5.2.1三角函数的概念课件-高一上学期数学人教A版(2019)必修第一册
- 甲亢性心脏病估护理查房
- 临床输血管理委员会年终的工作总结
- 韦莱韬悦-东方明珠新媒体集团一体化职位职级体系方案-2018
- 电力通道维护及管理方案
- 《体育与健康》课程标准(高职)
- 走近核科学技术学习通超星期末考试答案章节答案2024年
评论
0/150
提交评论