一: 存储引擎介绍
二: 表介绍
三:创建表
四:查看表结构
五:数据类型
六:表完整性约束
七:修改表
八:复制表
九:删除表
······································
一:存储引擎介绍
存储引擎说白了就是如何存储数据,如何为存储的数据机那里索引和如何更新,查询数据等技术的实现方法。因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以成为表类型(存储和操作此表的类型)
sql 解释器,sql优化器,缓冲池,存储引擎等组件在每个数据库中都存在,但不是每个数据库都有这么多存储引擎。
mysql的插件式引擎可以让存储引擎层的开发人员设计他们洗完的存储层,例如,有的应用需要满足事务的要求,有的应用则不需要对事务有这么强的要求;有的洗完数据能持久存储,有的只希望存放在内存中,临时并快速的提供对数据的查询
1 mysql支持的存储引擎
show engines\g;
innodb,myisam,memory,blackhole 四种存储引擎
二: 表介绍
表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的字段
id,name,qq,age称为字段,其余的,一行内容称为一条记录
三: 创建表
create table 表名 (
字段名1 类型[(宽度) 约束条件],
字段2 类型[ (宽度) 约束条件]
)
注意;
1 同一张表中,字段名是不能相同
2 宽度和约束条件可选
3 字段名和类型是必须的
四; 查看表结构
desc t1;
show cretate table t1\G;
五:数据类型
1 数值类型
a 整数类型
TINYINT SAMLLINT MEDIUMINT INT BIGINT
作用:存储年龄,等级,id 各种号码等
b 浮点型
FLOAT DOUBLE
作用:存储薪资,身高,体重,体质参数等
c 位类型
pass
2 日期类型
DATE TIME DATETIME TIMESTAMP YEAR
作用:存储用户注册信息,文章发布时间,员工入职时间,出生时间,过期时间等
3 字符串类型
VARCHAR CHAR
4 枚举类型和集合类型
字段的值只能在给定的范围中选择,如单选框,多选框
enum 单选 只能在给定的范围内选一个值,如性别sex 男msale/女famale
set 多选 在给定的范围内可以选择一个或一个以上的值(爱好1,爱好2,爱好3)
六: 表的完整性约束
用于保证数据的完整性和一致性
1 not null 与(default 为该字段设置默认值)
标识该字段不能为空
2 unique
表示该字段是唯一的
3 primary key 不为空且唯一
标识该字段是该表的主键 可以唯一的标识记录
4 auto_increment
标识该字段的值自动增长(整数类型,而且为主键)
5 foregin key 建立表与表之间的关系
标识该字段为该表的外键
6 unsiged 无符号
7 zerofill
使用0填充
8 index 索引
七: 修改表
1 修改表名
altert table 表名 rename 新表名;
2 增加字段
alter table 表名
add 字段名 数据类型 完整性约束条件
3 删除字段
alter table 表名
drop 字段名
4 修改字段
alter table 表名
modify 字段名 数据类型 完整性约束条件
change 旧字段名 新字段名 旧数据类型 完整性约束条件
change 旧字段名 新字段名 新数据类型 完整性约束条件
八: 复制表
复制表结构+记录 key 不会复制 主键 外键和索引
create table new_service slect * from service;
只复制表结构
select * from service where 1=2; 条件为假,查不到任何记录
create table new1_service select * from service where 1=2;
九 删除表
drop table 表名;