关系数据库原理(ER概念模型)
- 格式:ppt
- 大小:2.32 MB
- 文档页数:30


常见关系型数据库常见关系型数据库:Oracle DB2 Microsoft SQL Server MySQL关系型数据库是基于现实世界对象所抽象出来的数据库系统,把客户想法转变为概念模型(E-R图)然后把概念模型转变为数据模型(数据库表) ER图包含一些概念:实体(entity)属性(attribute)关系(relationship)SQL的优点:1.集合操作的方式,对数据成组处理,提高效率.2.每次只能发送并处理一条语句.3.屏蔽数据库内部的最佳条件选择算法,直接返回用户想要的结果.4.可以使用终端模式(SQLPLUS)也可以嵌套在高级语言中(JAVA) SQL分类:1.数据查询语句(SELECT)2.DML数据操作语句:INSERT DELETE UPDATE3.DDL数据定义语句:CREATE ALTER DROP(会自动提交事务)4.DCL数据控制语句:GRANT授权,REVOKE回收(自动提交事务)5.TCL事务控制语句:用于维护数据的一致性.COMMIT提交事务,ROLLBACK回滚事务,SAVEOPINT设置保存点.6.SCL会话控制语句:用于动态改变用户会话的属性.ALTER SESSION 改变会话7.SCL系统控制语句:用户动态改变数据库例程的属性,只有ALTER SYSTEM一条语句.(PL/SQL不支持语句,并该语句不会提交事务)基本查询语句:1.select * from table_name | view_name;2.select column from table_name | view_name;3.select distinct column from table_name | view_name; 消除重复4.select first_name,salary * 12 from s_emp; 数字列可用加减乘除5.处理NULL值NULL不是空格也不是0.插入数据时,如果没有值,也没有默认值,那么结果为NULL. select nvl(column, value) from table_name | view_name;如果column值为null,用value值替代select nvl(column,value1,value2) from table_name | view_name;如果column为NULL,用value2;不为空用value16.连接字符串|| 和concat函数如果字符串中加入数字值,那么可以直接指定数字值,如果加入字符串或者是日期值,用单引号引住.value1 || value2concat(value1, value2)7.列的别名select column as "columnTemp" from table_name | view_name; 双引号,一旦省略,别名就全为大写.desc table_name;查看表的结构alter session set nls_date_language='SIMPLIFIED CHINESE | AMERICAN';。
关系型数据库设计笔记1、实体关系模型(Entity-Relationship,简称ER),是目前应用最广泛的概念设计模型.它将现实世界的信息结构统一用属性、实体以及它们之间的联.............系.来描述。
●实体 (Entity)。
客观存在并可相互区别的事物称为实体。
实体可以是具体的人、事、物,也可以是抽象的概念或联系。
●属性 (Attribute)。
属性为实体的某一方面特征的抽象表示.如教师实体可由教师编号、姓名、年龄、性别、职称等属性来刻画。
●域 (Domain).属性的取值范围称为属性的域. 如:教师实体中,属性性别的域为男和女。
●主码(Primary Key)。
码也称关键字,它是能够唯一标识一个实体的属性集。
如:教师实体的主码为教师编号。
●联系(Relationship)。
现实世界的事物总是存在着这样或那样的联系,这种联系必然要在信息世界中得到反映。
事物之间的联系可分为两类:一类是实体内部的联系,如组成实体的各属性之间的关系;另一类是实体之间的联系,即不同实体之间的联系。
2、两个实体集之间的联系●1:1 联系:如果对于A中的一个实体,B中至多有一个实体与其发生联系,反之,B中的每一实体至多对应A中一个实体,则称A与B是1:1联系。
●1:n 联系:如果对于A中的每一实体,实体B中有一个以上实体与之发生联系,反之,B中的每一实体至多只能对应于A中的一个实体,则称A与B是1:n联系。
●m:n 联系:如果A中至少有一实体对应于B中一个以上实体,反之,B中也至少有一个实体对应于A中一个以上实体,则称A与B为m:n联系。
3、实体关系模型的表示方法ER图是直观表示概念模型的工具,ER图的基本思想就是分别用矩形框、椭圆形框和菱形框表示实体、属性和联系,使用无向边将属性与其相应的实体连接起来,并将联系分别和有关实体相连接,注明联系类型4、设计局部ER图[例6.1]在简单的教务管理系统中,有如下语义约束:●一个学生可选修多门课程,一门课程可被多个学生选修。
ER图是啥?E-R图也称实体-联系图(Entity Relationship Diagram),提供了表⽰实体类型、属性和联系的⽅法,⽤来描述现实世界的概念模型。
⽤矩形表⽰实体型,矩形框内写明实体名;⽤椭圆表⽰实体的属性,并⽤⽆向边将其与相应的实体型连接起来;⽤菱形表⽰实体型之间的联系,在菱形框内写明联系名,并⽤⽆向边分别与有关实体型连接起来,同时在⽆向边旁标上联系的类型(1:1,1:n或m:n)。
实体联系模型,是概念数据模型的⾼层描述所使⽤的数据模型或模式图,它为表述这种实体联系模式图形式的数据模型提供了图形符号。
下⾯是⼀个最常见的ER图,基本上只要讲解ER图就会碰到它。
通俗的讲,ER图是把现实⽣活中的各种关系,以图⽚的形式,抽象出来,形成⼀个思维导图,通过ER图可以了解现实中的各种关系,⽐如⼀个班有很多学⽣组成。
ER图的应⽤,最最难的地⽅我觉得是抽象思维能⼒,你需要把现实⽣活中各种关系映射到⼤脑⾥⾯,然后以ER图的形式输出可分析和可视化的东西。
通过实例来拆解ER图⼀、学校⾥的那点事⼉现实⽣活⼀个班级有N多的学⽣组成,每个班级有⼀个班级号,每⼀名学⽣有⼀个学号;学⽣可以根据⾃⼰的兴趣爱好选修课程,对于选修的课程需要考试,然后出成绩有学分;⼀名⽼师可以教授⼏门课程。
ER图通过现实的描述分解出⼏个实体,分别为班级、学⽣、课程、教师。
出现了⼏组关系,分别为⼀个班级由多名学⽣组成(1对多)、⼀名学⽣可以选多门课程,同时⼀门课程可能被多名学⽣选修(多对多)、⼀名教师可传授多门课程,同时⼀门课程可能被多名教师传授(多对多)。
这个场景⾥⾯没有⼀对⼀的关系。
关系数据库ER图画出来以后,如何映射到关系数据库中的表呢?这⼀步就⾮常简单了,分步骤进⾏创建:把实体映射为表、把关系映射为表。
实体映射为表,⽐较简单,不再赘述。
关系映射为表,相对来说⽐较复杂,以这⾥的ER图为例,存在1对多和多对多两类关系。
1对多或者多对1时,在多⽅添加⼀个外键,对应到1⽅,如学⽣表⾥的所在班级这个外键。