MySQL字段类型
MySQL字段类型MySQL支持多种类型大致可以分为三类数值、日期/时间和字符串(字符)类型。数值类型类型大小范围有符号范围无符号用途TINYINT1 字节(-128127)(0255)小整数值SMALLINT2 字节(-32 76832 767)(065 535)大整数值MEDIUMINT3 字节(-8 388 6088 388 607)(016 777 215)大整数值INT或INTEGER4 字节(-2 147 483 6482 147 483 647)(04 294 967 295)大整数值BIGINT8 字节(-9 233 372 036 854 775 8089 223 372 036 854 775 807)(018 446 744 073 709 551 615)极大整数值FLOAT4 字节(-3.402 823 466 E38-1.175 494 351 E-38)0(1.175 494 351 E-383.402 823 466 351 E38)0(1.175 494 351 E-383.402 823 466 E38)单精度浮点数值DOUBLE8 字节(-1.797 693 134 862 315 7 E308-2.225 073 858 507 201 4 E-308)0(2.225 073 858 507 201 4 E-3081.797 693 134 862 315 7 E308)0(2.225 073 858 507 201 4 E-3081.797 693 134 862 315 7 E308)双精度浮点数值字符串字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。该节描述了这些类型如何工作以及如何在查询中使用这些类型。char和varchar1.char(n) 若存入字符数小于n则以空格补于其后查询之时再将空格去掉。所以char类型存储的字符串末尾不能有空格varchar不限于此。2.char(n) 固定长度char(4)不管是存入几个字符都将占用4个字节varchar是存入的实际字符数1个字节n255或2个字节(n255)所以varchar(4),存入3个字符将占用4个字节。3.char类型的字符串检索速度要比varchar类型的快。varchar和text1.varchar可指定ntext不能指定内部存储varchar是存入的实际字符数1个字节n255或2个字节(n255)text是实际字符数2个字节。2.text类型不能有默认值。3.varchar可直接创建索引text创建索引要指定前多少个字符。varchar查询速度快于text,在都创建索引的情况下text的索引似乎不起作用。类型大小用途CHAR0-255字节定长字符串VARCHAR0-65535 字节变长字符串TINYBLOB0-255字节不超过 255 个字符的二进制字符串TINYTEXT0-255字节短文本字符串BLOB0-65 535字节二进制形式的长文本数据TEXT0-65 535字节长文本数据MEDIUMBLOB0-16 777 215字节二进制形式的中等长度文本数据MEDIUMTEXT0-16 777 215字节中等长度文本数据LONGBLOB0-4 294 967 295字节二进制形式的极大文本数据LONGTEXT0-4 294 967 295字节极大文本数据日期时间类型表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。类型大小范围格式用途DATE3字节1000-01-01/9999-12-31YYYY-MM-DD日期值TIME3字节-838:59:59/838:59:59HH:MM:SS时间值或持续时间YEAR1字节1901/2155YYYY年份值DATETIME8字节1000-01-01 00:00:00/9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和时间值TIMESTAMP4字节1970-01-01 00:00:00/2038结束时间是第 2147483647 秒北京时间 2038-1-19 11:14:07格林尼治时间 2038年1月19日 凌晨 03:14:07YYYYMMDD HHMMSS混合日期和时间值时间戳二进制布尔:bitbit 表示1个二进制的位bit(8) 表示8个二进制的位性别可以定义为0,1, 而不使用male或female字符串数据逻辑删除某辆车在车库中停放的状态所有基于两种状态的数据都可以使用0,1来存储.