这几天视频里说有可能面试的知识点:
SQL分类
DDL:数据库定义语言,专门操作数据库和表的增删改查
create(增加),drop(删除),alter(修改),show(查询)
DML:数据库操作语言,专门针对表中的数据的增删改
update delete(删除) insert
DQL:数据库查询语言,专门针对表中数据的查询
select
DCL:数据库控制语言,专门用来创建用户,删除用户,授权,撤权
grant
事务四大特征
原子性: 代表事务不可分割要不一起成功,要不一起失败
持久性: 事务一旦提交或者回滚,就会持久化更新数据库
隔离性: 多个事务之间不应该相互影响
一致性: 代表事务的前后,数据总量不变
隔离级别
出现问题
脏读 ---> 一个事务读到了另外一个事务未提交的数据
虚读(不可重复读) ----> 读到update语句导致一个事务多次查询的结果不一致
幻读 ---> 在一个事务中,读到了另外一个事务insert的语句
隔离级别
read uncommitted: 读未提交读 --->出现最恶心的脏读问题
read committed: 读已提交 (一次事务多次读到结果不一样) ---> Oracle
repeatable read:可重复读 ----> mysql
serielizable:串行化 --->效率低下
多表查询语法
查询语法:
select
列名列表
from
表名列表
where....
左外连接:
* 语法:select 字段列表 from 表1 left [outer] join 表2 on 条件;
* 查询的是左表所有数据以及其交集部分。
修改用户密码:
* mysql中忘记了root用户的密码?
1. cmd -- > net stop mysql 停止mysql服务
* 需要管理员运行该cmd
2. 使用无验证方式启动mysql服务: mysqld --skip-grant-tables
3. 打开新的cmd窗口,直接输入mysql命令,敲回车。就可以登录成功
4. use mysql;
5. update user set password = password('你的新密码') where user = 'root';
6. 关闭两个窗口
7. 打开任务管理器,手动结束mysqld.exe 的进程
8. 启动mysql服务
9. 使用新密码登录。 |
|