目录
多表查询:
多表查询的分类:
内连接:
外连接:
子查询:
做查询之前,要先弄清三样东西:
事务:
事务基本介绍:
概念:
操作:
事物的四大特征
面试常考
事务的隔离级别:
使用场景:
存在的问题:
隔离级别:
DCL:
管理用户、授权
管理用户:
添加用户
修改用户密码
多表查询:
多表查询的分类:
内连接:
- 可以理解为,是查询两个表的交集部分
- 分类:
- 隐式内连接
- 显式内连接
外连接:
- 可理解为,允许保留某一个表的全部
- 分类:
- 左外连接:
- 保留左边表的内容
- 右外连接:
- 保留右边表的内容
子查询:
- 子查询可以作为条件,使用运算符 in 来判断
- 子查询可以作为一张虚拟表参与查询,放在from关键词后面
- 如果多个表的名字比较长的话,可以给表起别名
做查询之前,要先弄清三样东西:
- 查询操作涉及到哪些表
- 要查询什么内容
- 查询的条件
事务:
事务基本介绍:
概念:
- 可以将一系列操作包裹起来,让操作更安全
操作:
- 开启事务: start transaction;
- 回滚:rollback;
- 提交:commit;
- oracle数据库是手动提交事务
事物的四大特征
面试常考
- 原子性
- 持久性
- 隔离性
- 一致性
事务的隔离级别:
使用场景:
- 多个事务对同一个数据进行操作,可能会产生异常
存在的问题:
- 脏读
- 不可重复读
- 幻读
隔离级别:
- 读未提交
- 读已提交
- 可重复度
- 串行化
- 隔离级别并非越高越好,越高,效率越低
DCL:
管理用户、授权
管理用户:
添加用户
- 想让创建的用户可以再任意的电脑访问,需要使用通配符 %
- 删除用户
修改用户密码
- 两种修改密码的方式
- 自己密码忘记了怎么办?
- cmd -- > net stop mysql 停止 mysql 服务
- 需要管理员运行该 cmd
- 使用无验证方式启动 mysql 服务: mysqld --skip-grant-tables
- 打开新的 cmd 窗口,直接输入 mysql 命令,敲回车。就可以登录成功
- use mysql;
- update user set password = password('你的新密码') where user = 'root';
- 关闭两个窗口
- 打开任务管理器,手动结束 mysqld.exe 的进程
- 启动 mysql 服务
- 使用新密码登录
- 查询用户
- 在MySQL数据库中的mysql数据库中有一张user表,里面存储着所有可以访问数据库的用户信息
- 授权: