0.2表的存储引擎
#表的存储方式
#存储方式1:MyISAM 5.5以下默认存储方式
#存储的文件个数:表结构、表中的数据、索引
#支持表级锁
#不支持行级锁,不支持事务,不致辞外键
#存储方式2:InnoDB 5.6以上默认存储方式
#存现的文件个数:表结构、表中的数据
#支持行级锁。支持表锁
#支持事务
#支持外键
#存储方式3:MEMORY 内存
#存储的文件个数:表结构
#优势:增删改差都很快
#劣势:重启数据消失、容量有限
# 索引 - 数据库的目录
# 查看配置项:
# show variables like '%engine%';
# 创建表
# create table t1 (id int,name char(4));
# create table t2 (id int,name char(4)) engine=myisam;
# create table t3 (id int,name char(4)) engine=memory;
# 查看表的结构
# show create table 表名; 能够看到和这张表相关的所有信息
# desc 表名 只能查看表的字段的基础信息
# describe 表名
# 用什么数据库 : mysql
# 版本是什么 :5.6
# 都用这个版本么 :不是都用这个版本
# 存储引擎 :innodb
# 为什么要用这个存储引擎:
# 支持事务 支持外键 支持行级锁
# 能够更好的处理并发的修改问题
-
数据库存储数据类型
#!/usr/bin/env python
# -- coding:utf-8 --
# 整数 int
# create table t4 (id1 int(4),id2 int(11));
# int默认是有符号的
# 它能表示的数字的范围不被宽度约束
# 它只能约束数字的显示宽度
# create table t5 (id1 int unsigned,id2 int);# 小数 float # create table t6 (f1 float(5,2),d1 double(5,2)); # create table t7 (f1 float,d1 double); # create table t8 (d1 decimal,d2 decimal(25,20));
-
数据库存储日期和时间
#!/usr/bin/env python
# -- coding:utf-8 --# 类型 # year 年 # date 年月日 # time 时分秒 # datetime、timestamp 年月日时分秒 # create table t9( # y year,d date, # dt datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP # ts timestamp);
-
数据库存储字符串
#!/usr/bin/env python
# -- coding:utf-8 --# char(15) 定长的单位 # alex alex # alex # varchar(15) 变长的单位 # alex alex4 # 哪一个存储方式好? # varchar :节省空间、存取效率相对低 # char :浪费空间,存取效率相对高 长度变化小的 # 手机号码、身份证号 char # 用户名、密码 char # 评论 微博 说说 微信状态 varchar # create table t11 (name1 char(5),name2 varchar(5));
-
数据库的enum_set
#!/usr/bin/env python
# -- coding:utf-8 --# create table t12( # name char(12), # gender ENUM('male','female'), # hobby set('抽烟','喝酒','烫头','洗脚') # ); # insert into t12 values('nene','不详','抽烟,喝酒,洗脚,洗脚,按摩');