商户名称,有长有短,我是不定义varchar长度呢,还是预计它的长度(应该不会大于100),定义成varchar(100)或者varchar(60)好呢?
搜索的执行效率是否一样呢?

解决方案 »

  1.   

    不可以不定义VARCHAR的长度,否则没有长度说明 的VARCHAR等同于 varchar(1)至于varchar(100) 和varchar(60)由于都在255以内,在效率上没有明显差别
      

  2.   


    varchar(100)需要定义长度,反正在255以内的,都是一样处理,也是在一个数据库数据页里面,执行效率没有多大差别。比如你出租车拉一个人和拉2个人,速度有区别吗?
      

  3.   

    VARCHAR值保存时只保存需要的字符数,另加一个字节来记录长度(如果列声明的长度超过255,则使用两个字节)。
      

  4.   

    varchar(N),当中N的大小,对数据库的预分配页的处理还是有影响的,尤其是索引