主要区别: varchar 更加节省空间 ,不定长但小于给定的长度限制),效率低。 cahr 定长,但是占用空间,效率高。数据库常常修改并且字段值长度不一致的建议用char ,因为用VARchar引起行迁移现象,避免造成多余的IO。不常常修改的建议用Varcchar节省空间。