Home >Database >Mysql Tutorial >Mysql数据类型简明说明

Mysql数据类型简明说明

WBOY
WBOYOriginal
2016-06-07 15:14:521611browse

Mysql数据类型 分为整数型、带小数点的和字符型、其他型。 网上很多的内容来介绍,但是都稍嫌复杂,这里做一个简明介绍 整数型: 从小到大是 :TINIINT SAMLLINT MEDIUMINT INT BIGINT 字节(byte)分别是:1、2、3、4、8. 他们所可以容纳范围是这样计算的:

Mysql数据类型 分为整数型、带小数点的和字符型、其他型。

网上很多的内容来介绍,但是都稍嫌复杂,这里做一个简明介绍


整数型:

从小到大是 :TINIINT   SAMLLINT     MEDIUMINT  INT  BIGINT

字节(byte)分别是:1、2、3、4、8.

他们所可以容纳范围是这样计算的:

例如是 N个字节的话,如果不用加正负符号,那么就是   2^(8*字节数) ,如果加了正负号,就要占去一位,范围是 2^(8*(字节数-1))

例如1个字节的TININIT  ,就是 0~256 或者 -128~127了。

乘以8是因为 1Byte=8Bit,8个二进制的数字表示了一个10进制的阿拉伯数字。



浮点数

从小到大分别是  FLOAT   DOUBLE DECIMAL(M,N)

占用的空间是 4, 8 , M+2

通常的说法:4个的Fload被成为单精度;8个Double被成为双精度。 Decimal属于可变的,比较灵活。



字符型

CHAR    VARCHAR  TEXT  BLOB

Char和Varchar是一样长度,都是255字节,但是Char是定长的,如果你告诉mysql  Char(30),那么假如你给他的字符不够30个,他就会补空格补到30个为止。

但是varchar不会,他会按照实际你给的长度来存。 其实255字节对于现代计算机不算什么负担了。但是在调用的时候不必来回考虑空格的问题,会比较占优势,因此现在用VARCHAR的比较多。

不过值得注意的是,这两个都是255个字节,英文(ASCII)只可以存255个字,如果是UTF-8这类8位的就只可以存127个字;如果是UTF-16或者GBK就又要减半了。实在没有多少字的。



TEXT  BLOB用来存长文本的。这2个有着微妙的区别。但是比较实用的是:TEXT不区分大小写,BLOB反之。



复合型

ENUM  SET  ,他们的本质都是字符型,区别是前者为单选,后者为多选。


日期型

不多说,还是比较简单了。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn