1.什么是数据库
什么是Sql :结构化查询语言,是专为数据库建立的查询语言
数据库构成:数据(Date),数据库(DateBase,简称DB),数据库管理系统(DBMS),数据库系统(DBS)
数据:对客观事物的符号表示,如图形,数字,字母等,数据库中的基本对象。在计算机中用记录描述事物。
数据库:长期存储在计算机内,有组织,可共享的数据集合。特点:有较小的数据冗余度,较高的数据独立性和易扩展性,可为各个用户共享。
DBMS:位于应用程序和数据存储之间的数据管理软件。用途:科学的组织和存储数据,高效的获取和维护数据。主要功能:1.数据库定义功能:对数据库进行修改,创建,和删除(DDL)。2.数据库操作功能:对数据进行检索和更新(DML)3.数据库的保护功能:保证数据恢复,控制,完整性和安全性。4.数据库维护功能。优点:相互关联的数据集合,较小的数据冗余,程序和数据独立,保证数据安全,可靠,正确,数据可以并发使用同时保证一致性。(保持同步更新)
数据库系统(DBS):DBS=DB+DBMS+应用系统+数据库管理员+用户数据库发展阶段:网状数据库(树形结构),层次数据库(图形结构),关系数据库(简单二维表)。信息:数据加工处理后获取的有用知识。
2.关系型数据库
信息的3种世界:
- 现实世界:人脑之外的客观世界
- 信息世界:观念世界
- 数据世界:信息世界中的信息数据化后对应的产物,就是将信息世界中的信息经过抽象和组织,按照特定的数据结构,将数据存储在计算机中。
实体—联系模型
- 实体:客观事物在信息世界中被称为实体。
- 属性:描述实体和联系的数据项。
- 联系:反应事物内部或i事物之间的关联集合。
- 常见的实体联系有3种:一对一,一对多,多对多。
关系模型
- 关系的基本概念:一个关系就是一张二维表(没有重复行和重复列),每个关系都有一个关系名。
- 元组:二维表中的每一行在关系中被称为元组。在SQL Serve中,一个元组对应一个记录,
- 属性:二维表中的每一列,每个属性都有一个属性名,属性值是各个元组的取值。
- 域:属性的取值范围被称之为域。
- 关键字:关系中能唯一区分,确定不同的属性或者属性组合(唯一标识,不能重复)主键(唯一不重复不能为空。也称主码)、外键(针对两个表的关系来说:加强两个表的联系)
- 关系模式:对关系的描述称为关系模式,其格式为:关系名(属性名1,属性名2…)
- 关系的基本特点:1.属性不可再分。2.同一关系中不能出现相同的属性名。3.元组、属性的顺序可以是任意的。
- 关系运算:选择、投影、连接
- 选择:从关系模式中找出给定条件的元组组成新的关系。(从行的角度考虑文体)
- 投影:从关系模式中上选择若干属性组成新的关系(从列的角度考虑问题)
- 连接:从两个表中选取满足一定条件的笛卡尔积的元组。
- 关系的完整性约束:实体完整性,
- 实体完整性:主属性值不能为空。(主键不能空)
- 参照完整性:主键与外键的关系。
- 域完整性:限制了某些属性中出现的值,把属性限制在一个有限的集合中。
- 关系模型的规范化:关系模式必须满足的条件称为范式。目的:1.消除存储异常。2.减少数据冗余。3.保证完整性和存储效率。
- 第一范式: 如果关系R每个属性都不可再分。也即:无重复的列。
- 第二范式:如果关系R满足第一范式,且每一个非主键字段完全依赖于主键。R为第二范式。
- 第三范式:如果关系R满足第二范式,且非主键字段之间不存在依赖关系,R满足3NF.
- E-R图:也称实体联系图,提供了表示实体类型、属性和联系的方法用来描述现实世界的概念模型。 矩形表示实体框内写实体名字。椭圆表示实体属性,内写实体属性名。菱形表示实体间联系,在菱形内写联系名字。
以上为两个E-R图对应的实列。