一、数据库技术的概述
1、数据库:存放各种数据的仓库。数据库技术的使用,几乎覆盖到平时所用的每款软件,例如,淘宝,各种商品相关的数据信息,一定离不开数据库存储和管理的操作。
2、数据库技术所研究的问题就是如何科学地组织和存储数据,如何高效地获取和处理数据。
二、SQL------>数据库语言
1、结构化查询语言,他是专为数据库而建立的操作命令集,用户在使用SQL语言时,只需要发出“做什么”,具体“怎么做”用户不需要参与,等待结果即可。
2、SQL语言------->属于【关系型数据库】的专属操作语言,关系型数据库他对于数据的存储和管理操作,都是以表的形式来组织的(表)。
三、数据库结构
1、数据(Data)
1> 数据是数据库的基本对象,数据的表示形式也是很多,比如文字,数字,音频,视频...,数据库中存储的数据,一定是合理的,有意义的,明确的含义。
2、数据库(DataBase-------DB)
1> 长期存储在计算机内,有组织,可共享的集合。
2> 数据库中的特征:具有较小和冗余度(重复性),较高的数据独立性,易扩展(可修改),并为各个用户所共享。
3> 数据库中数据是按照一定数据模型(表)来组织,存储,描述。
3、数据库管理系统(DBMS)
1> 数据库管理系统的定义
1.1> 数据库管理系统是位于应用程序与存储数据之间的一层数据管理软件,它是随着数据库环境的安装和配置完成后,生成在操作系统中,我们可以借助DBMS实现对库、表、数据的相关操作。
2> 数据库的主要功能:
2.1> 数据库的定义功能:通过相关SQL语句,可以实现对数据库、表进行创建、修改,和删除的操作;
2.2> 数据库的操作功能:通过相关SQL语句,可以实现对数据库中数据的【增删改查】的操作(两类检索和更新);
2.3> 数据库的保护功能:数据库的数据恢复、数据库的并发控制、数据完整性控制和数据安全性控制;
2.4> 数据库的维护功能:数据库的数据导入、转换、存储、数据库性能监控;
4、数据库系统(DBS)
4.1> 一般由数据库(DB)、数据库管理系统(及其开发工具)、应用系统、数据库管理员(DBA)和用户构成;
4.2> 数据库发展的经历了3个阶段:网状数据库、层次数据库、关系数据库;数据组织方式:网状模型、层次模型和关系模型;
4.2.1> 网状数据库------>网状模型------>图形结构
4.2.2> 层次数据库------>层次模型------>树形结构
4.2.3> 关系数据库------>关系模型------>二维表结构
4.3> 数据库系统(DBS)的基本概念
4.3.1> 数据:数据是数据库的基本对象,数据的表示形式也是很多,比如文字,数字,音频,视频...,数据库中存储的数据,一定是合理的,有意义的,明确的含义;
信息:信息是指数据加工处理后所获取的有用的知识,信息是以某种数据形式表现的;
4.4> 信息的三种世界
4.4.1> 现实世界:现实世界就是存在于人脑之外的的客观世界;
4.4.2> 信息世界:信息世界就是现实世界在人脑中的反映,又称观念世界;
4.4.3> 数据世界:数据世界是信息世界中的信息数据化后对应的产物,就是将信息世界中的信息经过抽象和组织,按照特定的数据结构,将数据存储在计算机中;
四、关系模型--->表
1>、目前我们所在的数据库,主要集中在关系型数据库,而关系模型数据库对于数据库的组织、存储、管理的形式采用的是关系模型,以表的形式进行相关操作;
2>、常见的专业话术:
2.1> 关系 :表, 由行和列构成的表,例,一个关系--->一张表
2.2> 关系名:表名;
2.3> 表中的行:被称为“元组”,“记录”,例如,学生信息表中,有两行数据,也可以称为有【2个元组】,【2条记录】;
2.4> 表中的列:被称为“属性”,“字段”,比如学生信息表中,有4个数据,也可以称为有【4个属性】,【4个字段】;
2.5> 表中的列名:被称为“属性名”,“字段名”;
2.6> 域:指的是属性的取值范围;域作为属性值的集合,其类型与范围具体由属性的性质及其所表达的意义确定。同一属性只能在相同域中取值。例如,学生信息表中年龄要求在18-40之间,且18-40就是属于该列的取值范围;
2.7> 关键字:指的是在一个关系(表)中,能够做到唯一区分属性,那么该列可以被看作是一个关键字;例,该列中存储的数据,是没有重复的,具备唯一性,比如学生信息表中的学号;
3>、关系模式:
3.1> 对关系的描述称为关系模式;
格式为:关系名(属性名1,属性名2,......,属性名n )
4> 关系的基本特点:
4.1> 关系必须规范化,属性不可再分割;
4.2> 在同一关系中不允许出现相同的属性名;
4.3> 在同一关系中元组的顺序可以任意;
4.4> 在同一关系中属性的顺序可以任意;
5>、关系运算:
5.1> 关系运算主要有选择、投影和连接三种;
5.1.1> 选择:从关系模式中找出满足给定条件的元组组成新的关系;
5.1.2> 投影:从关系模式中找出指定若干属性组成新的关系;
5.1.3> 连接:从两个笛卡尔积中选取属性间满足一定的元组,组成新的关系;
例:如A表是学生信息表,B表是学生课程表,A表与B表的笛卡尔积,故,所有学生会出现出现选修课程的情况;
五、关系型完整性约束
1>、 概述:关系完整性也可称为“表的完整性约束”,为了保证表的完整性而要遵守的一些规则、要求;
2>、 关系完整性约束主要体现在三个方面:
2.1> 实体完整性:能够保证表中数据的唯一性,不能有重复的数据;
2.2> 域完整性(用户定义完整性约束):保证表中不会输入无效的值,确保每个列中填充的数据都是有意义的、合理的、合法的;
2.3> 参照完整性约束(引用完整性约束):针对两个表来说的,目的是为了加强表与表之间的联系;
六、范式的应用
1>、概述:关系模式(表)要满足的条件被称为规范化形式,简称“范式NF”;
2>、目的:为了减少存储异常,减少数据的冗余度,保证表中数据的完整性和存储效率;
3>、分类:不同的范式分类,对于表的要求不一样:
第一范式(1NF):如果R的所有属性均为简单属性,即每个属性都不可再分、且没有重复的属性(列)的,则称R满足第一范式;
第二范式(2NF):如果关系R满足第一范式,且每个非主键字段完全依赖于主键,称R满足第二范式;
第三范式(3NF):如果关系R满足第二范式,且非主键字段之间不存在依赖关系,称R满足第三范式;
4>、总结:一个基本的关系型数据库,只需要满足第一范式的要求;一个完整的关系型数据库,则需要满足第三范式的要求。
七、E-R图
1>、实体--联系模型:为了描述实体与实体(事物与事物)之间的联系;
1.1> 实体:客观事物在信息世界中称为实体(Entity),它是现实世界中任何可区分、识别的事物。
1.2> 属性:描述实体特征的数据项,属性就是用来修饰实体的;