mysql中text大长度为65,535(2的16次方–1)字符的text列。
如果你都觉得text长度不够,也可以选择
mediumtext的最长度为16,777,215。
longtext的最长度为4,294,967,295
text通常是单独能保存非二进制的文本
在满足的条件语句需求的情况下,注意少的访问资源是数据库设计的重要原则,这和负责执行的sql有真接的关系,索引问题又是sql问题中出现频率最低的,最常见的一种的索引问题以及:无索引(失效)、隐式转换。1.sql执行流程看一个问题,在下面这个表t中,如果不是我要不能执行不需要想执行几次树的搜索不能操作,会系统扫描多少行?
这分别是id字段索引树、k字段索引树。
最左前缀不兼容原则
在mysql成立联合索引时会不能违背最左前缀自动分配的原则,即最左除外,在检索数据时从组建索引的最左边就开始匹配,
示例:
对列gid、列cid和列sid建一个同盟索引
联合索引uni_gid_cid_sid实际中确立了(gid)、(gid,cid)、(gid,cid,sid)三个索引。
插入到模拟数据
网上查询实例:
上面这个查询语句先执行时会依照最左前缀看操作原则,检索时会使用索引(gid,cid)进行数据看操作。
特别注意
索引的字段可以是横竖斜顺序的,如:
这两个查询语句都会应用索引(gid,cid),mysql创建战队组织索引的规则是简单会对组织合索引的最左边的,也就是那个字段gid的数据接受排序,在第一个字段的排序基础上,接着再对后面第二个字段cid并且排序。当然就等同于实现程序了类似于orderbygidcid这样的一种排序规则。
有人会疑惑第二个查询语句不条件最左前缀版本问题:简单的方法这个可以当然是两个查询语句都保函索引(gid,cid)中的gid、cid两个字段,仅仅顺序都不一样,网上查询条件一样的,最后所查询的结果那肯定是一样的的。既然如此结果是一般的,不知道以何种顺序的查询最好呢?此时我们是可以借助mysql查询优化器explain,explain会纠正sql语句该以什么样的顺序想执行效率最高,最后才生成唯一的执行计划。