概述
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE = utf8_general_ci ROW_FORMAT的解释
1.示例
CREATE TABLE `student` (
`id` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`score` int(40) NULL DEFAULT NULL,
`course` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
2.解释
1.ENGINE=InnoDB使用innodb引擎,从zhidaoMySQL 5.6开始默认使用该引擎
2.DEFAULT CHARSET=utf8 数据库默认编码为utf-8
3.COLLATE utf8_general_ci:数据库校对规则。ci是case insensitive的缩写,意思是大小写不敏感;相对的是cs,即case sensitive,大小写敏感;还有一种是utf8_bin,是将字符串中的每一个字符用二进制数据存储,区分大小写。
4.ROW_FORMAT = Dynamic:在mysql中, 若一张表里面不存在varchar、text以及其变形、blob以及其变形的字段的话,那么张这个表其实也叫静态表,即该表的row_format是Fixed,就是说每条记录所占用的字节一样。其优点读取快,缺点浪费额外一部分空间。若一张表里面存在varchar、text以及其变形、blob以及其变形的字段的话,那么张这个表其实也叫动态表,即该表的row_format是Dynamic,就是说每条记录所占用的字节是动态的。其优点节省空间,缺点增加读取的时间开销。所以,做搜索查询量大的表一般都以空间来换取时间,设计成静态表。
扩展:
1.InnoDB,是MySQL的数据库引擎之复一,为MySQL AB发布binary的标准之一。
2.AUTO_INCREMENT会在新记录插入表中制时生成一个唯一的数字。希望在每次插入新记录时,自动地创建主键字段的值,可zd以在表中创建一个 auto-increment 字段。
3.AUTO_INCREMENT=1 自增键的起始序号为1
最后
以上就是明理小海豚为你收集整理的创建表时附带的ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic 的解释的全部内容,希望文章能够帮你解决创建表时附带的ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic 的解释所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复