首页 > 代码库 > SQL Server数据库学习笔记-概念数据模型
SQL Server数据库学习笔记-概念数据模型
概念数据模型(Conceptual Data Model)也称为信息模型。它是对客观事物及其联系的抽象,用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具。概念数据模型摆脱了计算机系统及数据库管理系统的具体技术问题,集中精力分析数据及数据之间的联系等,与具体数据库管理系统无关。概念数据模型必须转换成逻辑数据模型,才能在数据库管理系统中实现。它强调其语义表达能力,即能够较方便、直接地表达应用中的各种语义只是。这类模型概念简单、清晰、易于被用户理解,是数据库设计人员和用户之间进行交流的语言。
Pter Pin-Shan Chen在1976年提出的实体-联系的方法,简称E-R模型(Entity-Relationship Model),是最为著名的一种概念模型的表示方法。该方法用E-R图来描述现实世界的概念模型。E-R模型能够清楚地表达被描述对象的语义,用图形化方式描述数据及其之间的关系,简单、容易理解掌握、且易被转换成关系数据模型。
为了适应新的应用需求,在基本E-R模型的基础上又提出了扩展实体联系模型(Extend entity-Relationship Model),简称为“EER模型”。这种模型能表示更多的语义,扩充了子类型的概念,为面向对象的数据库设计提供了邮箱工具。
1. 概念模型的基本概念
实体(Entity)
客观存在并可相互区分的事务称为实体。实体可以是具体的人、事和物,也可以是抽象的概念或联系。例如,学生是一个实体。
属性(Attribute)
实体所具有的若干特征称为属性,其中每一个特征就称为实体的一个属性。属性必须相对实体而存在。例如,学生实体可以由学好、姓名、性别、出生年份、所属院系、入学年份等属性组成(20140505,张珊,女,1992,计算机系,2014),这些属性组合起来表征了某一个学生。
码(Key)
唯一标识实体的属性集称为码。例如,学号是学生实体的码。
域(Domain)
属性的取值范围称为该属性的域。例如,学号的域为6位整数,姓名的域为字符串集合,年龄的域为小于28的整数,性别的域为(男,女)。
实体型(Entity Type) 实体型由实体名称和属性名称集合组成的形式来抽象和刻画同一类实体。例如,学生(学号,姓名,性别,出生年份,所属院系)就是一个实体型。
实体集(Entity Set)
同一类型实体的集合称为实体集。例如,全体学生就是一个实体集。
联系(Relationship)
现实世界中事物之间的联系在概念模型中必然要加以反映。一般存在两类联系:一是实体内部联系,通常是指实体的各属性之间的联系;二是实体之间的联系,通常是指不同实体之间的联系。
2. 联系
两个实体型之间的联系称为二元联系,是现实世界大量存在的联系,可以分为3类。
(1) 一对一(1:1)联系
实体集A只和实体集B有关系,同样实体B只和实体A有关系,记为1:1,。例如,一个学校只有一个正校长,而一个校长只在一个学校任职,则学校与校长之间具有一对一联系。
(2)一对多或多对一联系
实体集A在实体集B中对应多个实体,B中每个实体对应A中的一个实体,记为1:n。反之亦然,记为n:1。例如,一个专业中有若干名学生,而每个学生只在一个专业中学习,则专业与学生之间具有一对多的联系。
(3)多对多(m:n)联系
实体集A在实体集B中对应多个实体,反之B中每个实体对应A中的多个实体,记为m:n。例如,一个教师可以有很多学生,一个学生也可以有多个老师,则教师与学生之间具有多对多的联系。
实际上,一对一联系是一对多联系的特例,而一对多联系有事多对多联系的特例。
一般情况下,3个以上的实体型之间也存在着一对一、一对多、多对多的联系,称为多元联系。例如,对于课程、教师与参考书3个实体型,如果一门课程可以有若干个教师讲授,使用若干本参考书,而每一个教师之讲授一门课程,每一本参考书只供一门课程使用,则课程与教书、参考书之间的联系是一对多的。
同一个实体集内的各个实体之间也可以存在一对一、一对多、多对多的联系,称为一元联系。例如,职工实体集内部具有领导和被领导的联系,即某一职工(干部)领导若干名职工,而一个职工仅被另外一个职工直接领导。因此是一对多的联系。
3. 概念模型的表示方法
概念模型的表示方法很多,其中最著名也是最常用的表示法是E-R方法,也称为E-R模型。它用E-R图来描述现实世界的概念模型。E-R图的主要成分是实体型、属性和联系。
(1)实体型:用矩形表示,矩形框内写明实体名。
(2)属性:用椭圆形表示,并用无向边把实体与属性连接起来。
(3)联系:用菱形表示,菱形框内写明联系名,并用无向边分别把菱形与有关实体相连接,在无向边旁标上联系的类型(1:1,1:n或m:n)。需要注意的是,如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来。
例如,学校中有一个校长和若干个班级,每个班级有若干个教师和学生,每个教师教授许多学生,每个学生都有学号、姓名、性别、班级、入学时间属性。
需要说明的是,E-R图的绘制有两种方法:集成法和分离法。集成法是将一个系统的所有实体、实体属性,实体与实体之间的联系全部画在一个图上,形成一个完整的E-R图。这种画法适合描述规模不大的数据库系统,图2-5所示即是集成法绘制的E-R图。分离法是先分别画各个实体及其属性图,然后再画实体间联系图,这种画法适合描述规模较大的数据库系统。
SQL Server数据库学习笔记-概念数据模型