数据库

来源:互联网 发布:linux 改变文件权限 编辑:程序博客网 时间:2024/06/06 01:08
数据库

------

☆数据库管理系统(DBMS)的存储模型:


1)、层次模型

2)、网状模型

3)、关系型数据库



☆关系型数据库:关系型把世界看作是由实体和联系组成的。而关系型数据库是将数据库表做为实体,以数据库表的主键和外键的关联关系描述联系的一种数据库结构。


☆关系型数据库的关系分三种:

1)、一对一:一条主表记录对应一条从表记录,同时一条从表记录也对应一条主表记录。

2)、一对多:一条主表记录对应多条从表记录,同时一条从表记录只对应一条主表记录。

3)、多对多:一条主表记录对应多条从表记录,同时一条从表记录也对应多条主表记录。


☆关系型数据库只是一个保存数据的容器,大多数数据库依靠一个成为数据库管理系统(Database Management System,简称DBMS)的软件来管理数据库中的数据。管理关系型数据库的软件称为关系型数据库管理系统(Relational Database Management System,简称RDBMS)。数据库应用程序通过RDBMS与关系型数据库进行交互。 数据库管理系统分类:本地数据库管理系统 数据库服务器管理系统。


☆结构化查询语言SQL(Structured Query Language):是一种用于管理关系型数据库,并与数据库中的数据进行通讯的计算机语言。SQL是最普遍实现和应用的数据库语言,并且已经成为数据库管理的标准语言。SQL与RDBMS协同工作,来定义数据库的结构。存储数据、操作数据、获取数据、控制数据的访问以及确保数据的完整性。


☆SQL语句:

1)、数据定义语言(DDL)常见、修改、删除数据库的内部数据结构。

2)、数据查询语言(DQL)用于数据库中的数据查询。

3)、数据操作语言(DML)用于数据库中数据的修改,包括添加、删除、修改等。

4)、数据控制语言(DCL)控制数据库访问权限。

☆mysql的数据类型

1)、整型(int)

2)、浮点型(float)、(double)、(decimal(10,2))。

3)、字符型(varchar(20))。

4)、日期型(date)。


☆PRIMARY KEY:定义当前列为主键。主键有两个特点,非空,不能重复。



☆AUTO_INCREMENT:设置当前列为自动增长列,由DBMS为该列分配值,确保该列的值不重复。


☆条件判断Case when SELECT(图四)


☆删除数据DELETE会记录日志,意味着删除后的数据还可以恢复,但是效率低。TRUNCATE不会记录日志,删除后的数据不能恢复,但是效率高。(图三)


☆使用聚合函数进行统计汇总:聚合函数的分类 COUNT:统计行数量 SUM:获取单个列的合计值

AVG:计算某个列的平均值 MAX:计算列的最大值 MIN:计算列的最小值。(图二)


☆HAVING和WHERE区别:二者都是过滤条件,WHERE运行在分组前,因此不能执行任何聚合函数。HAVING是运行在分组后,只能用做聚合函数的过滤。(图一)



☆SQL执行顺序:在基本的SQL学习中我们已经掌握到了SQL执行顺序,下面来看看加上分组后的SQL的执行顺序:

第一步:执行FROM 第二步:WHERE条件过滤 第三步:GROUP BY分组 第四步:执行SELECT投影列 第五步:HAVING条件过滤 第六步:执行ORDER BY排序。


☆在分组查询中,能够查询的字段,只能是分组字段和聚合函数。


☆数据库完整性概述:为了防止垃圾数据的产生,从而影响数据库的执行效率!!! 可靠性+准确性 = 数据完整性。


☆数据完整性的分类:

1)、实体完整性:保证一行数据是有效的。 2)、域完整性:保证一列数据是有效的。

3)、引用完整性:保证引用的编号是有效的 。 4)、用户自定义完整性:保证自定义规则。


☆实体完整性:保证每行所代表的实体能互相区别,不能存在两条一模一样的记录。 主键列不能为空,也不能重复。一个表中只能有一个主键。唯一约束是指给定列的所有值是唯一的。它和主键约束的区别在于该列可以为空,并且可以在一张表中给多个列设置唯一约束。


☆域完整性:保证指定列的数据有效性,域完整性是指列的输入有效性 实现方法:非空约束(Not Null) 默认约束(Default) 检查约束(Check -- MySQL不支持)。


☆引用管理器:两个表之间如果存在外键约束,那么删除主表记录时,由于有外键约束存在,无法删除有从表记录引用的主表记录,这时删除主表记录有两种方式:

1)、级联删除:将主表记录对应的从表记录先做删除,然后再删除主表记录。

DELETE FROM t_room WHERE manID=1;
DELETE FROM t_man WHERE id = 1;

2)、外键设空:将主表记录对应的从表记录外键设置为null,再删除主表记录

UPDATE t_room SET manID=NULL WHERE manID=2;
DELETE FROM t_man WHERE id=2;



☆外键与外键约束:外键是指从表的某列与主表的某列存在依附关系。 外键约束是指在外键关联上强制加上一个约束,如果违反该约束,则不允许该数据的修改。 注意:没有建立外键约束不等于没有外键。




0 0
原创粉丝点击