数据库基础
- 安装数据库
- 视图(如何使用,有什么用)
- 子查询、标量子查询、关联子查询
数据库操作
- 表的创建、删除、更新
- 常用函数
- order by 默认升序
select * from tablename order by c2 asc; #升
select * from tablename order by c2 desc; #降
select * from tablename order by c1 asc, c2 desc;
问题
-
ACID - 原子性、一致性、隔离性、持久性
-
主键和外键
主键:唯一地标识表中的每一行
外键:外键是相对于主键说的,是用于建立表之间 的联系,外键作主关键字的表被称为主表,具有 此外键的表被称为主表的从表。用于与另一张表的关联。比如这里有两张,user(用户)表和qx(权限)表,user中gid是用户权限id,而gid是依赖于qx中的id。那么qx中的id就是user的外键。
-
Mysql的行锁和表锁( 锁是计算机协调多个进程或纯线程并发访问某一资源的机制)
- 表级锁
- 每次操作锁住整张表。开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低;
- 行级锁
- 每次操作锁住一行数据。开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高;
- Mysql 2种存储引擎
存储引擎:就是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。 在Oracle 和SQL Server等数据库中只有一种存储引擎。而MySql数据库提供了多种存储引擎。
MyISAM更适合读密集的表,而InnoDB更适合写密集的的表。
- MyISAM特点
-
- 不支持行锁(MyISAM只有表锁),不支持事务;不支持外键;不支持崩溃后的安全恢复
- 在表有读取查询的同时,支持往表中插入新纪录
- 支持全文索引
- InnoDB(MySQL的默认数据库引擎)
-
- 支持行锁,支持事务,支持外键,支持崩溃后的安全恢复
- 不支持全文索引
- Mysql默认配置文件名:my.cnf