1.数据库就是存放数据的地方,我们可以在数据库中查找数据、添加数据、修改数据、删除数据。
2.关系型数据库中也是存放了多张二维表,不过各个表之间是相互关联的。
3.SELECT语句用来从数据库选取数据,结果会被存储到结果集中。
4.SELECT语法:SELECT<字段名>FROM<表名>;
5.WHERE后面基本跟着条件,用来筛选符合条件的数据
6.WHERE基本语法:SELECT<字段名>FROM<表名>WHERE<筛选条件>;
7.INSERT插入语句,用来向数据库中添加数据
8.INSERT基本语法:INSERT INTO<表名>(列名)VALUES(值);
9.UPDATE更新语句,用来修改表中的一条或多条数据
10.UPDATE基本语法:UPDATE<表名> SET<字段名=值>WHERE<筛选条件>;
11.DELETE删除语句,用来删除表中的一条或多条数据
12.DELETE基本语法:DELETE FROM<表名>WHERE<筛选条件>;
13.ORDER BY语句是用来排序的,后面跟的是字段名
14.ORDER BY语法:SELECT字段名 FROM表名ORDER BY字段名;
15.LIMIT子句用来限制返回记录的数量。
16.LIMIT基本语法:SELECT 字段名 FROM表名LIMIT限制行数;
17.多张数据表联合查询,需要用到JOIN连接。
18.INNER JOIN:内连接,也可以只写JOIN。只有进行连接的两个表中,都存在与连接标准相匹配的数据才会被保留下来,相当于两个表的交集。如果前后连接同一张表,也叫自连接。
19.INNER JOIN基本语法:
SELECT<字段名>FROM<表a>
JOIN<表b>
ON a.<字段名>=b.<字段名>;
20.LEFT JOIN:左连接,也称左外连接。操作符左边表中符合WHERE子句的所有记录将会被返回,操作符右边表中如果没有符合 ON 后面连接条件的记录时,那么从右边表指定选择的列的值将会是NULL。
21.RIGHT JOIN:右连接,也称右外连接。会返回右边表所有符合WHERE语句的记录。左表中匹配不上的宇段值用NULL代替。
22.UNION联合查询:是将多个查询结果,按行纵向合并。
23.UNION 基本语法:
SELECT<字段名>FROM<表名>
UNION
SELECT<字段名>FROM<表名>
24.常用的聚合函数有:
MAX()最大值
MIN()最小值
SUM()总值
AVG()平均值
COUNT()记录条数
25.COUNT(*)的意思就是结果集中所有记录的数量,COUNT()经常与DISTINCT去重关键字结合使用。
26.聚合函数通常会与GROUP BY 子句和 HAVING子句结合使用。
27.GROUP BY子句是用来给结果集分组的。
28.GROUP BY基本语法
SELECT<字段名>FROM<表名>
GROUP BY<字段名>;
29.HAVING子句跟WHERE一样也是条件筛选语句,放在GROUP BY的后面。
30.HAVING子句基本语法:
SELECT<字段名>FROM<表名>
GROUP BY<字段名>
HAVING<筛选条件>;
31.GROUP BY中没有出现的列,SELECT中就不能出现,SELEC没有出现的列,HAVING中就不能出现。
32.HAVING与WHERE的区别:
(1)WHERE是在GROUP BY分组之前进行条件筛选,后面不可以跟聚合函数。
(2)HAVING是在GROUP BY分组之后进行条件筛选,后面可以直接跟聚合函数。
33.域完整性
域完整性是指一个列的输入有效性,如是否允许空值。强制域完整性的方法有:设定列的数据类型、默认值(Default)、NOT NULL、Check等多种约束。MySQL8.0.16之前版本忽略Check约束,但是能被解析。
34.实体完整性
实体完整性是指保证表中所有的行唯一,也就是不应使用完全相同的数据记录。强制实体完整性的方法有:主键(Primary Key)、唯一键(Unique Key)、唯一索引(UniqueIndex)和自增列(Auto_Increment)等约束,其中最常用的是使用主键。
35.参照完整性
参照完整性也叫引用完整性。参照完整性是用来维护相关数据表之间数据一致性的手段,可以避免因一个数据表的记录改变而造成另一个数据表内的数据变成无效的值。强制参照完整性的方法有:外键(Foreign Key)约束、触发器(Trigger)和存储过程(StoredProcedure)等。
36.视图其实就是一个虚拟表,也包含行和列。我们可以在视图中查找、更新、删除数据,与原始数据表的用法差不多。
37.视图的作用:可以简化复杂的SQL语句,隐藏具体的数据细节,保护数据。
38.视图基本语法:
CREATE VIEW<视图名>AS
SELECT<字段名>FROM<表名>WHERE<筛选条件>
39.数据库的三大范式:
第一范式(1NF):是对属性的原子性约束,要求属性具有原子性,不可再分解;
第二范式(2NF):是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;
第三范式(3NE):是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。
40.创建自定义函数基本语法:
DELIMITER 新语句结束符号
CREATE FUNCTION 函数名([参数类型])
RETURNS 返回值类型
BEGIN
<SQL语句>;
RETURN 返回值;
END
新语句结束符号
DELIMITER;
41.删除自定义基本语法:
DROP FUNCTION <函数名>
42.使用存储过程的优点:
(1)存储过程可以一次编译,多次使用。提升了SQL的执行效率和开发效率。
(2)存储过程的安全性强,我们在设定存储过程的时候可以设置用户的使用权限,使存储过程和视图一样具有较强的安全性。
43.创建存储过程基本语法:
CREATE PROCEDURE<存储过程名>()
BEGIN
<SQL语句>;
END;
44.删除存储过程基本语法:
DROP PROCEDURE<存储过程名>