目录
一、SQL通用语法
- SQL语句可以单行或多行书写,以分号结尾。
- 若语句过长,可以使用空格或缩进来增强可读性,且空格和缩进的个数没有限制。
- SQL语句不区分大小写,关键字建议大写。
- 注释:
- -- 单行注释
- # 单行注释
- /* */ 多行注释
二、SQL语句的分类
- DDL(Data Definition Language):数据定义语言,用来定义数据库对象(数据库,表,字段)
- DML(Data Manipulation Language):数据操作语言,用来对数据库表中的数据进行增删改
- DQL(Data Query Language):数据查询语言,用来查询数据库中表的记录
- DCL(Data Control Language):数据控制语言,用来创建数据库用户、控制数据库的访问权限、控制对数据的增删改查操作
三、DCL语句
1、用户管理
(1)查询用户:
USE mysql;
SELECT * FROM user;
(2)创建用户:CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
(3)修改用户密码:ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';
(4)删除用户:DROP USER '用户名'@'主机名';
1、创建用户 iteast,只能够在当前主机localhost访问,密码123456;
查看一下,可以看到创建的用户,但是全部是NO,没有权限
2、创建用户 heimg,可以在任意主机访问该数据库,(%代表任意主机)密码123456;
3、修改用户 heimg 的访问密码为1234;
4、删除iteast@localhost用户
2、权限控制
(1)查询权限:SHOW GRANTS FOR '用户名'@'主机名';
返回内容表示没有任何权限,只能够登录上mysql而已。
(2)授予权限:GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
(3)撤销权限:REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
撤销前先重新打开一个终端,以heimg用户登录mysql查看一下
接下来撤销
重新打开一个mysql,登录heimg用户,在heimg用户中查看权限
注意:多个权限之间使用逗号分隔。
授权时数据库名和表名可以用*进行通配,代表所有。