1.char类型字段会自动删除字符串后面所带的空格,而varchar不会 2.char比varchar快..... 3.myisam 建议 char类型,memory char跟varchar一样,都作为char类型处理;innodb建议 varchar类型 4.optimize table 清理碎片 text碎片产生实例: create table emp (id tinying(1),content text)engine=myisam; 新建测试表 insert into emp values (1,repeat(‘www‘,10000));id为1的插入10000的连续www insert into emp values (2,repeat(‘www‘,10000));id为2的插入10000的连续www insert into emp values (3,repeat(‘www‘,10000));id为3的插入10000的连续www 此时表的数据文件大小为:250K(假设) delete from emp where id = 3; 此时表的数据大小还是250K,这样就明显造成了空间的浪费 所以这个时候就要祭出碎片清理:optimize table emp; 省下3/1的空间啦啦啦啦啊! 5.所谓合成索引,其实就是将要存储的文本(数据)进行散列,然后用另一个字段存储这些散列值,查找的时候,查找散列值就能找到对应的了 缺点就是只能完全匹配,对于大数据来说,没什么实际意义!! 6.精度要求高的程序,比如货币,则一定要用定点数来描述字段 7.日期时间类型根据最小选择 总结::任何字段类型都以最小的字段模式进行存储即可~
原文:http://www.cnblogs.com/shibazi/p/3830457.html