mysql innodb 表
表是根据主键顺序组织存放的,这种方式称为索引组织表
没定义主键,则判断是否有非空的唯一索引,如果有就用该列作为主键,没有的话自动创建6字节的指针作为主键
可通过 select a,b,c,_rowid 来判断表的主键,_rowid会显示单列主键列的值
逻辑存储结构
常见的段有数据段、索引段、回滚段等,数据段是B+树的叶节点,索引段是B+树的非叶节点
区由连续的页组成,固定为1MB
页默认为16KB,可通过 innodb_page_size 修改
约束
数据完整性
实体完整性:每个表必须有主键
域完整性:每列的值满足特定的条件
参照完整性:两张表之间的关系
innoDB提供了主键、唯一、外键、默认、非空约束
定义外键时的 on delete 和 on update 表示对父表进行delete和update时,对子表进行的操作