ppt课件-顾刚ch6_database_2016_第1页
ppt课件-顾刚ch6_database_2016_第2页
ppt课件-顾刚ch6_database_2016_第3页
ppt课件-顾刚ch6_database_2016_第4页
ppt课件-顾刚ch6_database_2016_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

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

文档简介

,多媒体技术,大学计算机基础,顾刚计算机教学实验中心gugang,2015年底股票信息数据开户总数2个亿,每户信息约20KB沪深A股总数量2700股票交易所:假设全国有上千股票交易所,第6章数据库技术基础,股票管理信息系统,如何组织、存储、查询海量的数据信息?数据库技术应运而生数据库技术解决的主要问题是:如何科学地组织和存储数据如何高效地获取和处理数据如何更广泛、更安全地共享数据,问题和结论,第6章数据库技术基础,大量数据以表格形式存储表格中的行和列都有逻辑含义表格中数据可进行下列操作:增、删、改分类、排序、统计查询所关心的数据,第6章数据库技术基础,如何显示打印查询结果即数据输出格式界面如何设计数据信息的完整性规范性数据与数据之间的关系数据存储的冗余问题,第6章数据库技术基础,第6章数据库技术基础,数据库系统的概念,数据库管理技术的发展,数据模型,ACCESS数据库系统的使用,关系数据库语言SQL简介,今天的计算机被人们称为数据处理机数据处理的中心问题是数据管理数据管理是指对数据的定义、组织、分类、编码、存储、检索和维护随着计算机硬件和软件的发展,数据管理经历了三个发展阶段人工管理、文件系统和数据库系统,第6章数据库管理技术发展,特点:(1)数据不独立保存不能实现数据共享(2)数据与程序不可分割数据变化程序亦变(3)各程序的数据彼此独立数据冗余(4)50年代以前,应用主要是科学计算,数据少,人工管理阶段,第6章数据库管理技术发展,文件管理阶段,(1)程序和数据分开,彼此有一定的独立性,数据和程序都看成文件(2)数据以文件的形式独立保存,由操作系统按名存取管理(3)实现一定程度的数据共享:即多个程序可同时操作某个文件(4)数据文件之间缺乏联系,修改数据会造成不一致性,第6章数据库管理技术发展,数据库管理阶段,(1)数据以数据库的形式保存,最大限度减少冗余(2)数据和程序之间彼此独立,实现了高度共享(3)专门数据库管理软件(DBMS),对数据进行安全性、完整性、并发性等控制管理,第6章数据库管理技术发展,第6章数据库技术基础,数据库系统的概念,数据库管理技术的发展,数据模型,ACCESS数据库系统的使用,关系数据库语言SQL简介,数据(Data)是描述客观事物的信息符号的总称,这些信息符号能输入到计算机中存储起来,又能被处理数据处理(管理)(DataProcess)是指对数据进行收集、整理、组织、存储、加工、传输、检索的各个过程总称实体(Entity)指客观世界存在的某个事物西安交大、姚明、鸟巢、公管61、文试63、一只羊、一部手机等每个实体有其特征(属性Attribute),例如:电视机的属性:平面尺寸、色彩、频道、液晶等学生的属性:?教室的属性:?手机的属性?属性值指属性的具体内容,例如:实体:课程属性(名):课程编号,课程名称,学分,学时属性值:“TS52001”,“Java技术与应用”,3,48,第6章数据库系统的概念,文件(File)一般指数据序列保存在外部永久介质上的整体形式。与文件相关的概念主要有记录(Record)、字段(Field)和数据类型(DataType)记录(Record)对应于每个实体的所有特征数据。如一个学生(20120061,李冰,20,男,计算机)为一个记录字段(Field)对应于实体的属性,也称为数据项。字段的命名往往和属性名相同。例如学生有学号、姓名、年龄、性别、系等字段。字段的值可以表示属性值,例如学号的值20120061,姓名的值李冰等,第6章数据库系统的概念,第6章数据库系统的概念,1)数据库指长期存储在计算机内的有组织的可共享的数据集合2)数据库管理系统(DBMS)指对数据库进行管理的软件主要管理功能如下(1)定义:定义数据库的结构、数据完整性和其它的约束条件(2)操纵:实现数据插入、修改、删除和查询(3)控制:实现数据安全控制、完整性控制以及多用户环境下的并发控制(4)维护:提供对数据的装载、转储和恢复,数据库的性能分析和监测3)应用程序指为了完成某个目标,利用DBMS对大量数据进行处理的指令集合。4)用户指使用、设计、开发、维护和管理数据库的人员。主要有三类用户:普通用户(TU)、应用程序员(AP)、数据库管理员(DBA)。5)数据库系统是由硬件、操作系统、数据库、数据库管理系统、应用程序、数据库管理员等部分组成。,第6章数据库系统的概念,第6章数据库技术基础,数据库系统的概念,数据库管理技术的发展,数据模型,ACCESS数据库系统的使用,关系数据库语言SQL简介,三个世界的划分:现实世界:指客观存在的所有事物,例如主楼中的教室与讲台信息世界:是对现实世界的抽象,每个事物在信息世界中称为实体。实体是由属性来描述的。反映实体的模型称为(实体)概念模型,反映实体之间联系的模型称为逻辑模型。例如教室的属性?讲台的属性?教室与讲台的联系。数据世界:信息的数据化。将信息世界中的每个实体及实体之间联系用记录和数据项分别描述。概念模型和逻辑模型数据化后称为数据模型。例如将两个实体的每个属性取值范围加以确定,又称字段的数据类型的建立。,第6章数据模型,由于计算机不能直接处理现实世界中的具体事物人们必需将现实世界中的具体事物转换成计算机能处理的数据计算机数据的格式概括如下:bitbyte字段记录文件数据库从客观存在的事物到最后在计算机内的数据表示,需要进行抽象,这种抽象过程被称为设计建立数据模型从现实世界抽象为数据世界往往不是一步到位,一般分为两级(层)抽象,第6章数据模型,建立数据模型分两步:第1步:将客观世界中的事物抽象描述成实体及其实体间的联系教室的属性:教室名称、物理位置、长、宽、高、座位数量、面积讲台的属性:讲台名称、长、宽、高、颜色、材料、摆放位置两者联系的属性:教室名称、讲台名称第2步:将实体及实体间的联系抽象描述成数据教室面积取值范围:整数还是实数讲台的长宽高取值范围:整数还是实数,第6章数据模型,常见的数据模型有层次模型、网状模型和关系模型层次模型:每个实体有唯一的“父”实体,且有多个“子”实体网状模型:每个实体既有多个父实体,也有多个子实体关系模型:用二维表格来表示实体与实体之间的联系分别对应树型联系、图型联系、表格联系,如下图所示,第6章数据模型,实体集之间的联系在现实世界中,事物之间都是有联系的实体之间的联系通常是指不同实体集之间的联系两个实体集之间的联系有三种类型:,一对一联系:实体集A中的一个实体至多与实体集B中一个实体相对应,反之亦然,则称实体集A与实体集B为一对一的联系例如:班级与班长:一个班只能有一位班长观众与座位:电影院是对号入座病人与床位:病床专用,第6章数据模型,第6章数据模型,4数据模型-逻辑模型,一对多联系:实体集A中的一个实体与实体集B中的多个实体相对应,然而实体集B中的一个实体至多与实体集A中的一个实体相对应班级与学生:计算机11班有李立,樊为,张之和等同学公司与职员:SUN公司有BillJoy,GongLi和JamesGosling等职员省份与市县:陕西省包括西安市,延安市,渭南市等,第6章数据模型,第6章数据模型,多对多联系:实体集A中的一个实体与实体集B中的多个实体相对应,反之,实体集B中的一个实体与实体集A中的多个实体相对应教师与学生:一位教师指导多名学生,一名学生由多位教师指导学生与课程:一名学生选多门课程,一门课程被多名学生所选工厂与产品:一个工厂生产多种产品,一种产品可由多个工厂生产,第6章数据模型,表格能够描述任何实体,将客观存在并且可以相互区别的“事物”抽象为实体“教室”实体抽象成面积、座位数、地址、多媒体等属性“手机”实体抽象成型号、出厂字号、速度、容量、像数、价格、摄像等属性属性有“型”和“值”之分“型”即为属性名,如姓名、年龄、性别是属性的型“值”即为属性的具体内容取值,如(990001,张立,20,男,计算机),这些属性值的集合描述了客观世界存在的一个学生实体这就是对客观世界的一层抽象,由于人的认识不同,抽象的结果有所不同,第6章数据模型,候选码:指一组属性,其值唯一标识一个实体学生实体候选码:学号身份证号码,教室实体候选码?手机实体候选码?主码(PrimaryKey):候选码一般有多个,选其中一个候选码学生实体主码:身份证号码和学号都可以成为主码外码:指某个实体存在一个非主码属性A,该属性A是另一个实体的主码,则A称为外码学生实体:手机是非主码,移动公司注册表格中:手机号码、姓名、身份证号码等,第6章数据模型,目前实际使用的数据库系统大多是关系数据库关系数据库的相关概念:域(Domain):相同类型数据元素值的集合比如自然数集合、小写字母集合笛卡尔积:一组域D1,D2,Dn,则笛卡尔乘积为D1D2Dn=(d1,d2,dn)|diDi,i=1,2,n元组(Tuple):笛卡尔乘积中每一个元素(d1,d2,dn)称为一个元组,第6章数据模型-关系模型,笛卡尔积实例域D1=学生集合(Student)=张宁,李健,王鹏域D2=计算机语言课程集合(Language)=C+,OP,JAVA域D3=修课类别(Lesson)=必修课,选修课,笛卡尔积D1D2D3=(张宁,C+,必修课),(张宁,C+,选修课),(张宁,OP,必修课),(张宁,OP,选修课),(张宁,JAVA,必修课),(张宁,JAVA,选修课),(李健,C+,必修课),(李健,C+,选修课),(李健,OP,必修课),(李健,OP,选修课),(李健,JAVA,必修课),(李健,JAVA,选修课),(王鹏,C+,必修课),(王鹏,C+,选修课),(王鹏,OP,必修课),(王鹏,OP,选修课),(王鹏,JAVA,必修课),(王鹏,JAVA,选修课),第6章数据模型-关系模型,用表格描述D1D2D3,笛卡尔积的子集称为关系关系形式化定义:笛卡尔积D1D2Dn中的子集称为域D1,D2,Dn上一个关系,记作R(D1,D2,Dn),或简记为R例如在D1D2D3中只选出与学生张宁有关的内容就构成一个关系R(D1,D2,D3),一般的笛卡尔积可能没有实际意义,但经过某些运算或操作得到的子集有实际意义,第6章数据模型-关系模型,将概念模型和逻辑模型进行推导设计成关系模型在关系(表格)模型中每一行称为一条记录,或元组(Tuple)每一个列称为一个属性(或字段)属性的取值范围称为域例如学生实体可以设计成如下二维表格:,第6章数据模型,课程实体表格,课程与学生联系表格,第6章数据模型,每一列不可再分同一关系中属性(字段)不允许重名关系中不允许有完全相同的元组关系中任意交换两行位置不影响数据实际含义关系中任意交换两列位置不影响数据实际含义,关系模型的特点,这也是设计关系模型的准则,第6章数据模型,数据库数据模型设计事实上归结为关系模型设计数据库由一系列表格组成在表格设计中要注意:表格中的数据避免重复冗余表格中的数据字段意义清晰,无二义性表格中插入和删除数据不会丢失数据表格有利于数据查找,第6章数据模型,数据模型是概念模型(实体模型)和逻辑模型的数据化数据模型就是对现实世界数据特征的模拟与抽象,数据模型=数据结构+数据操纵+完整性约束,关系模型指用关系(表格)来表示实体及实体之间的联系关系模型是目前最实用的数据模型,关系模型=关系模式+数据操纵+完整性约束,第6章数据模型-关系模型,关系模式指一个关系中的所有属性名记为:(属性名1,属性名2,属性名N)例:SLL(Student,Language,Lesson)shop(店名,地址,法人名,经营者名,电话)fruit(水果名,价格,库存量,质量等级)book(书名,著者名,出版社,价格,页数,开本,ISBN,版本)student(姓名,学号,性别,宿舍,电话)电话号码簿(电话号码,姓名)注意上述关系模式中,哪些是关键字、哪些是外码?,第6章数据模型-关系模型,数据操纵=查询操作+更新操作查询操作:选择、投影、连接、并、交、差更新操作:增加、删除、修改数据的操作完整性约束=实体完整性+参照完整性+用户定义完整性实体完整性主要指关系中关键字不为空且唯一例如公民数据表中身份证号不为空且唯一参照完整性指外码的删除,出现数据不完整性例如院系表中院系名称被删,导致学生表中院系取值错用户定义完整性指针对某一具体数据的约束条件教师表中教龄不能大于年龄,第6章数据模型-关系模型,关系运算简介,关系代数是使用数学符号构成的表达式(关系运算)来描述数据查询的一种方式。常见的一些关系运算中,属于集合运算的有并(Union)、差(Difference)、交(Intersection)和广义笛卡尔积(ExtendedDescartesianProduct)。关系A和B简单的集合运算,第6章数据模型-关系运算,常用三种关系运算选择运算投影运算连接运算,第6章数据模型-关系运算,在关系表格中抽取若干行(记录)构成新表Selectfrom工资表where实发工资45.3country=ChinaNOTANDORCountry=ChinaANDage35,查询举例,带有筛选条件的查询,第6章SQL结构化查询语言,SELECTtitle_id,type,price,price-price*0.3FROMtitlesWHEREprice-price*0.318SELECTpub_id,pub_nameFROMpublishersWHEREcountry=USAANDstate=CA,查询举例,第6章SQL结构化查询语言,SUM(expression)AVG(expression)MIN(expression)MAX(expression)COUNT(expression)COUNT(*),查询举例,使用库函数进行统计查询,常用库函数如下:,第6章SQL结构化查询语言,SELECTAVG(price)FROMtitlesSELECTMAX(price)FROMtitlesWHEREtype=business,查询举例,第6章SQL结构化查询语言,SELECTAVG(qty),SUM(qty),COUNT(DISTICTstor_id)FROMsalesSELECTCOUNT(*)FROMpublishersWHEREstate=CA,查询举例,第6章SQL结构化查询语言,字符串中%表示匹配任意字符串字符串中_表示匹配任意一个字符SELECTau_lname+.+au_fname,city+.+stateFROMauthorsWHEREau_fnameLIKED%SELECTau_lname+.+au_fname,city+.+stateFROMauthorsWHEREau_idLIKE72_-%,查询举例,带有LIKE子句的查询,一般格式为:列名LIKE字符串常数,第6章SQL结构化查询语言,通常返回的结果是随机排列的。SELECTstor_name,cityFROMstoresORDERBYstore_name,查询举例,带有结果排序ORDER子句的查询,一般格式为:ORDERBY字段表,第6章SQL结构化查询语言,第6章数据库技术基础,数据库系统的概念,数据库管理技术的发展,数据模型,ACCESS数据库系统的使用,关系数据库语言SQL简介,1、选择DBMS平台可以选择某个数据库管理系统平台,如SQL、ACCESS等2、创建数据库结构在DBMS平台中创建上述六张表格3、数据录入将所有原始数据输入到相应表格中4、数据查询、统计等对已建

温馨提示

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

评论

0/150

提交评论