一、字段类型的选择:
MySQL中INT、BIGINT、SMALLINT、TINYINT的区别:
1.BIT[M]
位字段类型。M表示每个值的位数,范围从1到64,如果M被忽略,默认为1
2.TINYINT[(M)] [UNSIGNED] [ZEROFILL] M默认为4
极小的整数。带符号的范围:-128到127;无符号的范围:0到255。
3. BOOL,BOOLEAN
是TINYINT(1)的同义词。zero值被视为假;非zero值视为真。
4.SMALLINT[(M)] [UNSIGNED] [ZEROFILL] M默认为6
小的整数。带符号的范围:-32768到32767;无符号的范围:0到65535。
5.MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL] M默认为9
中等大小的整数。带符号的范围:-8388608到8388607;无符号的范围:0到16777215。
6. INT[(M)] [UNSIGNED] [ZEROFILL] M默认为11
普通大小的整数。带符号的范围:-2147483648到2147483647;无符号的范围:0到4294967295。
7.BIGINT[(M)] [UNSIGNED] [ZEROFILL] M默认为20
大整数。带符号的范围:-9223372036854775808到9223372036854775807;无符号的范围:0到18446744073709551615。
注意:M代表的并不是存储在数据库中的具体的长度,如果是带符号的,那么存储在数据库中的具体的长度等于M-1,如果是不带符号的,那么存储在数据库中的具体的长度等于M。