一、数据库连接
- 打开cmd命令控制台—>输入登录命令:mysql -u root -p—>输入数据库密码—>连接成功
二、创建数据库
- 控制台输入创建语句:create database 数据库名
三、数据库账号及权限管理
- 首先查询用户
查询语句:SELECT * from user;
- 创建用户并设置登录密码
创建用户的语句:create user 用户名;
设置登录密码的语句:ALTER USER ‘用户名’@’%’ IDENTIFIED WITH mysql_native_password BY ‘密码’;
当创建成功后,就可以去连接创建的数据库用户了
- 权限操作
设置权限的语句:grant all on 数据库名.* to 用户名@’%’;
当给用户设置了所有权限之后,被设置用户就可以对有权限的数据库进行增删查改所有的操作
当然也可以单独设置权限,比如只给一个用户增查改的权限(不能进行删除操作)
特定设置权限语句是:grant 要设置的权限(多个用逗号隔开) on 数据库名.* to 用户名@’%’;
回收权限的语句:revoke all on 数据库名.* from 用户名@’%’;
当权限被全部收回时,之前设置的权限将全部没有
权限查询语句:show grants for 用户名@’%’;
可以查看被查询用户下的所有权限
- 库和表的管理
创建数据库:create database 库名;—>进入要操作的数据库:use 库名;—>创建表:create table 表名(列名 列的类型【(长度) 约束】)—>查询表:show tables—>删除库:dorp database 库名;
四、数据库约束
- 含义:一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性
- 分类:六大约束
(1) NOT NULL:非空,用于保证该字段的值不能为空(比如姓名、学号等)
(2) DEFAULT:默认,用于保证该字段有默认值(比如性别)
(3) PRIMARY KEY:主键,用于保证该字段的值具有唯一性,并且非空(比如学号、员工编号等)
(4) UNIQUE:唯一,用于保证该字段的值具有唯一性,可以为空(比如座位号)
(5) CHECK:检查约束【mysql中不支持】(比如年龄、性别)
(6) FOREIGN KEY:外键,用于限制两个表的关系,用于保证该字段的值必须来自于主表的关联列的值,在从表添加外键约束,用于引用主表中某列的值(比如学生表的专业编号,员工表的部门编号,员工表的工种编号) - 主键和唯一的区别:
主键不允许为空且一个表中最多只能有一个,唯一可以为空且一个表中允许有多个