MySQL 默认支持的存储机制是 InnoDB,InnoDB 通过建立行级锁保证事务的完整性,通过共享锁处理 select 语句,以提供事务安全的存储机制。
某些基本操作
· show databases:数据库实例包含的数据库;
· show tables:数据库中包含的数据表;
关键字
· where - having
where 子句过滤行,having 子句过滤组;只能在 having 子句中使用组函数(聚合函数);
·
约束
MySQL 使用 auto_increment 支持自增长特性,支持除 check 外的 4 种完整性约束:
· not null:非空约束;
· unique:唯一约束;
· primary key:主键约束;
· foreign key:外键约束,参照完整性;
级联删除:删除主表记录时,关联的从表记录也删除,则需要在建立外键约束的后面增加 on delete cascade 或 on delete set null,前者是级联删除,后者是将从表的关联列的值设置为null。
具体使用可参见 MySQL - 约束;
索引
模式Schema 中的一个数据库对象,从属于数据表。通过快速路径访问方法快速定位数据、加快对表的查询。缺点是索引的存储占用空间、索引的维护有系统开销。
视图
一个或多个数据表中记录的逻辑显示。通过 with check option 子句强制不允许修改视图的数据。
· 提供数据的独立性;
· 简化查询;
· 限制对数据的访问,提供对相同数据的不同显示;
视图的 本质 是一条被命名的SQL查询语句。利用 子查询 建立视图,同样可以建立表:
create or replace view 视图名
as 子查询语句
多表查询
· 交叉连接 cross join:笛卡尔乘积,无连接条件;
· 自然连接 natural join:以 2 表中的所有同名列为连接条件;
- using 子句连接:显式指定某些同名列为连接条件;
· 左、右、全外连接 left/right/full join:
- on 子句连接:常用连接方式;
参考
· 21分钟MySQL 入门教程- wid - 博客园;
· ;
· ;