VARCHAR是MySQL中的一种数据类型,也是数据库设计中最常用的字段类型之一。在数据库上,VARCHAR是一种变长字符串类型,其存储容量是可变的,考虑到存储空间的效率,此类型保存的是可变长度的字符串,例如中文或英文或混合的字符串,而不是像CHAR一样保存一个长度固定的字符串。
VARCHAR的定义可以指定长度,取值范围为1~65535个字符。这个长度定义会影响到存储空间。在设计VARCHAR字段时需要根据实际情况选择一个合适的长度,既能够满足数据长度需求,又能够节约存储空间。
与CHAR不同的是,当VARCHAR类型保存的数据长度小于定义的长度时,空余空间会保留下来。并且,当定义了一个VARCHAR类型的字段时,如果插入的数据长度超过了它的大小,这个字段会自动扩展存储空间。当然,这一过程是耗费资源的,应该尽量避免多次扩展,在定义该字段时就需要考虑清楚它的长度。