DCL:管理用户,授权
- DBA:数据库管理员
- 管理用户
- 添加用户:CREATE USER “用户名”@“主机名” IDENTIFIED BY “密码”;
- 删除用户:DROP USER “用户名”@“主机名”;
- 修改用户密码:SET PASSWORD FOR “用户名”@“主机名” = PASSWORD(“新密码”)
- 查询用户:use mysql;select * from user;
- 授权:
- 查询权限:SHOW GRANTS FOR “用户名”@“主机名”;
- 授予权限:GRANT 权限列表 ON 数据库名.表名 TO “用户名”@“主机名”
- 撤销权限:REVOKE 权限列表 ON 数据库名.表名 FROM “用户名”@“主机名”
约束
概念:对表中的数据进行限定,保证数据的正确性,有效性和完整性
分类:
- 主键约束:primary key
- 非空约束:not null
- 唯一约束:unique
- 外键约束:foreign key
-
非空约束:not null
- 创建表时添加约束
- 创建表之后,修改列名以添加非空约束
-
唯一约束:unique,某一列的值不能重复
注意:
- 唯一约束可以有null,但只能有一条为null
- 删除唯一约束:ALTER TABLE 表名 DROP INDEX 列名;
-
主键约束:primary key
- 注意:
- 含义:非空且唯一
- 一张表只能有一个字段为主键
- 主键就是表中记录的唯一标识
- 在创建表时添加约束
- 注意:
-
自动增长:
- 概念:如果某一列是数值类型的,使用auto_increment可以来完成值的自动增长
- 创建表时,添加自增长
-
外键约束:foreign key:让表与表产生关系,从而保证数据的正确性
-
在创建表时添加外键约束
-
语法:create table 表名(
外键列
constraint 外键名称 foreign key (外键列的名称) references 主表名称(主表列名称)
)
-
-
-
级联操作
- 实现级联操作需要在添加外键时设置级联更新
- 添加级联操作
- 语法
- ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段名称) REFERENCES 主表名称(主表列名称)ON UPDATE CASCADE ON DELETE CASCADE;
- 分类
- 级联更新 ON UPDATE CASCADE
- 级联删除 ON DELETE CASCADE;
- 语法