数据库设计表时写的长度,是说每条数据都会开辟这个长度的空间,还是说不足这个长度的就占本身长度的空间?

如题
如果设计表时数据类型选择varchar,长度设为2000
此时我要将一个长度为100的字符串存到这个column,那它占用的资源是100个字符的量,还是2000个字符?

varchar是可变长度的字符串。虽然你定义字段长度为2000,但是实际占用磁盘,是以实际写入数据库的数据长度来占用磁盘空间的。也就是实际占用磁盘资源是100个字符的量

你的意思是如果你什么也不存,也会占用2000,

是长度最长只能有2000,大于2000就会报错