如题,
我定义了一个char(5)类型,结果最多只能输入一个字符,莫非一个字符要占5个长度,那这里的长度=5倒底是什么意思,好像不是几个字符的意思,还有int(4)这里的长度=4又是什么意思。。还有varchar的长度定义的意思,是不是说数据库先给该列分配一个最小的空间,在数据不超过8KB的情况下来扩充空间我不太懂,请各位指教谢谢!!
我定义了一个char(5)类型,结果最多只能输入一个字符,莫非一个字符要占5个长度,那这里的长度=5倒底是什么意思,好像不是几个字符的意思,还有int(4)这里的长度=4又是什么意思。。还有varchar的长度定义的意思,是不是说数据库先给该列分配一个最小的空间,在数据不超过8KB的情况下来扩充空间我不太懂,请各位指教谢谢!!
长度为 n 个字节的固定长度且非 Unicode 的字符数据。n 必须是一个介于 1 和 8,000 之间的数值。存储大小为 n 个字节。
varchar(n)
长度为 n 个字节的可变长度且非 Unicode 的字符数据。n 必须是一个介于 1 和 8,000 之间的数值。存储大小为输入数据的字节的实际长度,而不是 n 个字节。一个汉字是2个字节,E文字母和数字是1个字节
类似的还有datetime等
那为什么 我定义一个 char(5),它只允许我最多输入一个英文字母,
按你说的话应该是可以最多输入5个英文字母,或者2.5个汉字啊??
WHY??还有按你说的,如果varchar(n)这里的n,如果不是规定数据存储的大小,那它放在这里有什么用?能帮我解答一下吗,谢谢!!