目录
DQL查询表中的记录(条件查询、模糊查询 、排序查询、聚合查询 、分组查询、分页查询)
structured Query Language :结构化查询语言。 其实就是定义了操作所有关系型数据库的规则。每种数据库操作的方式存在不一样的地方,称为“方言”
启动与卸载
此电脑--右键 --- 管理 --- 服务和应用程序(服务可以看作是没有图形界面的应用程序) -- - 服务 --- 按M+enter --- 找到Mysql80 --- 右键属性 --- 启动类型 --- 手动(防止开机自启动)
--- 右键属性选择选择启动或则停止 (昨天的net start\stop mysql80 命令也可以)
卸载
-
去mysql的安装目 录找到my . ini文件
*复制datadir="C:/ProgramData/MySQL /MySQL Server 5.5/Data/"
我的是 C:\Program Files\MySQL\MySQL Server 8.0
或者是 C:\ProgramData\MySQL\MySQL Server 8.0
-
卸载MySQL
-
删除C : /ProgramData目录下的MySQL文件夹。
DCL DDL DQL DML
1) DDL(Data Definition Language )数据定义语言用来定义数据库对象:数据库,表,列等。关键字: create, drop,alter 等
2) DML (Data Manipulation Language )数据操作语言来对数据库中表的数据进行增删改。关键字: insert, delete, update
3) DQL(Data Query Language )数据查询语言用来查询数据库中表的记录(数据)。关键字: select, where 等
4) DCL(Data Control Language)数据控制语言(了解)用来定义数据库的访问权限和安全级别,及创建用户。关键字: GRANT,REVOKE等
CRUD
操作数据库
操作表
U(Update) :修改
1.修改表名 alter table表名rename to新的表名;
2.修改表的字符集 alter table 表名character set字符集名称;
3.添加一列 alter table表名add 列名+数据类型;
4.修改列名称类型 alter table 表名change 列名+新列名新数据类型;alter table 表名modify 列名+新数据类型;
5.删除列 alter table 表名drop 列名;
操作数据
修改数据:
update 表名 set 列名1 = 值1, 列名2 = 值2.,... [where 条件];
DQL查询表中的记录(条件查询、模糊查询 、排序查询、聚合查询 、分组查询、分页查询)
LIKE :模糊查询 *占位符: _ 单个任意字符 %:多个任意字符。
查询姓名是3个字的人
SELECT ★ FROM student WHERE NAME LIKE '__' ;
查询姓名中包含马的人
SELECT ★ FROM student WHERE NAME LIKE '%马%' ;
分组查询:
1.语法:group by分组字段;
2.注意:
1.分组之后查询的字段:分组字段、聚合函数
2. where和having 的区别?
1. where 在分组之前进行限定,如果不满足条件,则不参与分组。having在分组之后进行限定,如果不满足 结果,则不会被查询出来。
2. where 后不可以跟聚合函数,having可以进行聚合函数的判断。
约束
唯一约束是可以为NULL的而且可以多个都为NULL,主键约束相当于非空约束加唯一约束。
外键列是人肉眼看到的关系,constraint约束是计算机内部的关系,外键一般是另一个表的主键,本表对应的附属没有删除干净之前外表的相应主键无法删除。外键可以为NULL但是不可以为不存在的外键。
级联操作(牵一发而动全身)
多对多中间表的建表: