《数据库应用AnApplicationofDatabaseSystem.ppt》由会员分享,可在线阅读,更多相关《数据库应用AnApplicationofDatabaseSystem.ppt(50页珍藏版)》请在三一办公上搜索。
1、数据库应用An Application of Database System,主讲:陈昌平,实验总结,主要错误1、不能为某数据类型指定列宽,如int、text、datetime等数据类型。2、没有创建db_teaching_data.mdf文件。原因:filename的路径不在同一行。3、其他错误:如标点符号错误,正确的应该在英文状态下输入标点。,数据库系统基本概念,上次课所建表的表结构如何来的?,Why?,四个基本概念数据 数据库数据库系统 数据库管理系统数据管理的发展历程和数据库发展历史数据模型逻辑结构设计,数据库的三级模式结构,数据库的三级模式:外模式、概念模式、内模式什么是模式呢?模式
2、就是数据的一种抽象描述。内模式是数据库中数据的存储结构、存储方法、存取策略等的描述,也称物理模式、存储模式概念模式是数据库中数据的逻辑结构的描述,也称模式、概念结构。外模式是单个用户用到的数据逻辑结构的抽象,通常也称视图、子模式。,数据库的三级模式结构,数据库的三级模式结构,一个数据库只有一个内模式,一个概念模式,但可以有多个外模式。实际的物理数据库与内模式对应,用户使用外模式。,数据库的三级模式结构,数据库管理系统(DBMS),不仅提供三级模式的定义语言,而且还提供了三级模式之间相互转换的机制,即二级映射机制。二级映射即外模式到模式的转换,表示为“外模式/模式”映射,模式到内模式的转换,表示
3、为“模式/内模式”映射。,数据库的三级模式结构,外模式/模式映射,定义了外模式到模式之间的对应关系。是在外模式中定义的。模式/内模式映射,定义了模式到内模式之间的对应关系。在模式中描述的。,数据模型,在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲数据模型就是现实世界的模拟数据模型应满足三方面要求能比较真实地模拟现实世界容易为人所理解便于在计算机上实现,数据模型的组成要素,数据结构:对系统静态特性的描述与数据类型、内容、性质有关和与数据之间联系有关的对象的集合。数据结构包括两方面的内容,一是数据本身,如关系模型中的关系、域、属性等;二是数据之间的联系。数据操作:系
4、统动态特性的描述对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则检索、更新(包括插入、删除、修改)数据的约束条件一组完整性规则的集合,数据模型,数据模型分成两个不同的层次(1)概念数据模型 也称信息模型,它是按用户的观点来对数据和信息建模。(2)结构数据模型 主要包括网状模型、层次模型、关系模型等,它是按计算机系统的观点对数据建模。,概念数据模型,基本概念E-R模型逻辑结构设计,概念数据模型,信息世界中的基本概念(1)实体(Entity)客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。(2)属性(Attribute)实体所具有的某一特性称为属性。一个实
5、体可以由若干个属性来刻画。属性有“型”和“值”之分。(3)码(Key)(候选码)唯一标识实体的属性集称为码。,概念数据模型,信息世界中的基本概念(4)域(Domain)属性的取值范围称为该属性的域。(5)实体型(Entity Type)用实体名及其属性名集合来抽象和刻画同类实体称为实体型如学生(学号,姓名,年龄,性别,系)就是一个实体型。(6)实体集(Entity Set)同型实体的集合称为实体集例如,全体学生就是一个实体集。,概念数据模型,信息世界中的基本概念(7)联系(Relationship)现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系实体型间联系
6、 两个实体型 一对一联系(1:1)三个实体型 一对多联系(1:n)一个实体型 多对多联系(m:n),概念数据模型,一对一联系一对多联系多对多联系,概念数据模型联系,一对一联系:如果对于实体集A中的每一个实体,实体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。记为1:1。一对多联系:如果对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系。记为1:n。多对多联系:如果对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集
7、B中的每一个实体,实体集A中也有m个实体(m0)与之联系,则称实体集A与实体B具有多对多联系。记为m:n,概念模型的表示方法E-R模型,概念模型的表示方法很多实体联系方法实体联系方法(E-R方法)用E-R图来描述现实世界的概念模型E-R方法也称为E-R模型,概念模型的表示方法E-R模型,实体型:用矩形表示,矩形框内写明实体名。属性:用椭圆形表示,并用无向边将其与相应的实体连接起来。,学生,教师,概念模型的表示方法E-R模型,联系联系本身:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)联系的属性:联系本身也是一种实体型,也
8、可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来,概念模型的表示方法E-R模型,概念模型的表示方法E-R模型,概念模型的表示方法E-R模型,概念模型的表示方法E-R模型,概念模型的表示方法E-R模型,常用结构数据模型,非关系模型层次模型(Hierarchical Model)网状模型(Network Model)数据结构:以基本层次联系为基本单位关系模型(Relational Model)数据结构:表面向对象模型(Object Oriented Model)数据结构:对象,结构数据模型关系模型,关系模型的基本概念1、关系 一个关系就是一张二维表,通常将一个没有重复行、重
9、复列的二维表看成一个关系,每个关系都有一个关系名。2、元组 二维表的每一行在关系中称为元组(Tuple)。一行描述了现实世界中的一个实体,或者描述了不同实体间的一种联系。3、属性 二维表的每一列在关系中称为属性(Attribute),每个属性都有一个属性名,各个属性的取值称为属性值。每个属性有一定的取值范围,称为值域。,结构数据模型关系模型,关系模型的基本概念4、关键字关系中能惟一区分、确定不同元组的属性或属性组合,称为该关系的一个关键字。关键字又称为键或码(Key)。5、外部关键字 如果关系中某个属性或属性组合并非关键字,但却是另一个关系的主关键字,则称此属性或属性组合为本关系的外部关键字或
10、外键(Foreign Key)。在关系数据库中,用外部关键字表示两个表间的联系。,结构数据模型关系模型,关系模型的基本概念6、关系模式对关系的描述关系名(属性1,属性2,属性n)学生(学号,姓名,年龄,性别,系,年级)7、目或度(Degree):设有关系R(D1,D2,Dn),这里的R表示关系的名字,n是关系的目或度。,结构数据模型关系模型,关系数据模型的数据操纵与完整性约束 关系数据模型的操纵主要包括查询、插入、删除和更新数据。这些操作必须满足关系的完整性约束条件。关系的完整性约束条件包括三大类:实体完整性、参照完整性和用户定义的完整性。其具体含义将在后面介绍。关系数据模型的存储结构 在关系
11、数据模型中,实体及实体间的联系都用表来表示。在数据库的物理组织中,表以文件形式存储,每一个表通常对应一种文件结构。,结构数据模型关系模型,关系数据库,关系数据库系统是支持关系数据模型的数据库系统。关系数据库应用数学方法来处理数据库中的数据。该数据库由多个关系模型即多个表组成。表中列定义事物的属性,行保存该事物的属性所对应的所有数据。关系数据库管理系统RDBMS如著名的IBM DB2,Oracle,Ingres,SYBASE,Informix,COBASE,PBASE,EasyBase,DM/2,OpenBase等。,关系数据库中的基本概念,记录表中的一行数据称为记录字段表中的属性,属性是列的定
12、义主键外键索引搜索时的排列顺序,练习1:设计E-R模型,为某连锁商店设计一个E-R模型。该企业下有若干连锁店,每家商店有若干职工,但每个职工只能服务于一家商店。其中商店实体型的属性包括商店号、商店名、地址、店长。商品型实体的属性包括商品号、商品名、规格、单价、产地。职工实体型的属性包括职工号、姓名、性别、工资,在联系中应反映出职工参加某商店的开始时间、商店销售商品的月销售量。,数据库系统,数据库设计流程,数据库设计流程,逻辑结构设计P911,用E-R图描述实体集与实体集之间的联系,目的是以E-R 图为工具,设计关系型数据库,确定应用系统所使用的数 据库应该有哪些表,每个表应该有什么。任务将实体
13、和实体的属性及实体间的联系转换为关系模式确定关系模式的属性和码,逻辑结构设计,经理(经理姓名,民族,住址,出生年月,电话)公司(公司名称,注册地,类型,电话)学生(学号,姓名,民族,出生年月,班号)班级(班号,名称,年级,系,专业),逻辑结构设计(E-R到关系模式)1:1,逻辑结构设计(E-R到关系模式)1:1,法则1:联系单独对应关系模式,由联系的属性,参与联系的各实体集的主码构成该关系模式的属性,其主码可选参与实体集的任一方主码。法则2:联系不单独对应关系模型,联系的属性以及一方的主码加入另一方实体集对应的关系模式中。,逻辑结构设计(E-R到关系模式)1:1,经理(经理姓名,民族,住址,出
14、生年月,电话)公司(公司名称,注册地,类型,电话)法则1:经理(经理姓名,民族,住址,出生年月,电话)公司(公司名称,注册地,类型,电话)领导(公司名称,经理姓名)法则2:经理(经理姓名,民族,住址,出生年月,电话,公司名称)公司(公司名称,注册地,类型,电话)或者:经理(经理姓名,民族,住址,出生年月,电话)公司(公司名称,注册地,类型,电话,经理姓名),逻辑结构设计(E-R到关系模式)1:N,逻辑结构设计(E-R到关系模式)1:N,法则1:联系单独对应关系模式,由联系的属性,参与联系的各实体集的主码构成该 关系模式的属性,N端的主码作为该关系模型主码。法则2:联系不单独对应关系模型,将联系
15、的属性以及1端的主码加入N端实体集对应的关系模式中,主码仍为N端主码。,逻辑结构设计(E-R到关系模式)1:N,学生(学号,姓名,民族,出生年月,班号)班级(班号,名称,年级,系,专业)法则1:学生(学号,姓名,民族,出生年月,班号)班级(班号,名称,年级,系,专业)联系(学号,班号)法则2:学生(学号,姓名,民族,出生年月,班号,班号)班级(班号,名称,年级,系,专业),逻辑结构设计(E-R到关系模式)M:N,逻辑结构设计(E-R到关系模式)M:N,法则:联系单独对应一个关系模式,该关系模式包括联系的属性,参与联系的各实体集的主码,该关系模式的主码由各实体集的主码属性共同组成。学生(学号,姓
16、名,民族,出生年月)课程(课程号,课程名,学时数)学习(学号,课程号,成绩),练习2:将E-R模型转换成关系模式集,并指出主码和外码。,为某连锁商店下有若干连锁店,每家商店有若干职工,但每个职工只能服务于一家商店。其中商店实体型的属性包括商店号、商店名、地址、店长。商品型实体的属性包括商品号、商品名、规格、单价、产地。职工实体型的属性包括职工号、姓名、性别、工资,在联系中应反映出职工参加某商店的开始时间、商店销售商品的月销售量。,参考答案,法则1商店(商店号,商店名,地址,店长)商品(商品号,商品名,规格,单价,产地)职工(职工号,姓名,性别,工资)销售(商店号,商品号,月销售量)聘用(职工号,商店号,聘用日期)法则2商店(商店号,商店名,地址,店长)商品(商品号,商品名,规格,单价,产地)职工(职工号,姓名,性别,工资,商店号,聘用日期)销售(商店号,商品号,月销售量),