mysql数据库如何设置字段长度

1.关于char和varchar

  • char是定长字符,varchar是变长字符。
  • 在mysql4.0版本之前,char和varchar后面的长度表示字节,在utf-8编码格式下:三个字节存储一个汉字(包括汉字下的符号),一个字节存储一个英文字母,一个数字。
  • 在mysql5.0版本之后,char和varchar后面的长度表示一个字符,一个汉字、英文字母、数字或者符号,都是一个字符。

2.关于数字类型的长度

  • 数字类型的长度就不是这个意思了,则更为复杂。
  • int类型:长度的设定值范围1~255(设置0时自动转为11,不设置时自动转为默认的11),这个设定值其实就是设定宽度,所谓宽度就是在数值显示时候,当数值宽度短于该设置的宽度时,将自动进行左填补0。不过要看到效果则需要在创建类型时候加zerofill这个值,表示用0填充,否则看不出效果的。我们通常创建数据库时候不会去加这个值。
  • 我们不管设置多少的宽度,都不会影响到存储的范围。int存储的范围都是-2147483648~2147483647(即 -2的31次方 ~ 2的31次方-1)。
    tinyint在此范围内任意长度值的字段值范围都是-128~127(-2的七次方 -1 ~ 2的七次方-1)。

你可能感兴趣的:(日常其他杂七杂八笔记,mysql,数据库,sql,java)