varchar(M),M表示最大列长度,实际占用空间是字符串的实际长度加一。如varchar(50)定义了一个最大长度为50的字符串,
但实际插入的长度只有10个字符,那么存储的实际字符串是10个字符加一个结束字符。varchar在保存和检索时尾部的空格保留。
char(M)为固定长度字符串,当插入的字符串实际长度不足M时,插入空格进行保存。在进行检索时,尾部的空格会被去掉。
char是固定长度,对于存储空间不大,但是在速度上要求比较高的可以使用char,缺点是浪费存储空间。
varchar(M),M表示最大列长度,实际占用空间是字符串的实际长度加一。如varchar(50)定义了一个最大长度为50的字符串,
但实际插入的长度只有10个字符,那么存储的实际字符串是10个字符加一个结束字符。varchar在保存和检索时尾部的空格保留。
char(M)为固定长度字符串,当插入的字符串实际长度不足M时,插入空格进行保存。在进行检索时,尾部的空格会被去掉。
char是固定长度,对于存储空间不大,但是在速度上要求比较高的可以使用char,缺点是浪费存储空间。