数据库数据类型

Posted wsy5-5

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库数据类型相关的知识,希望对你有一定的参考价值。

数据类型包括整型、浮点数类型和定点数类型、日期与时间类型、字符串和二进制类型。

一、整数类型

mysql的整数类型分为5种:TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT

不同整数类型所占用的字节数和取值范围都是不同的。如下图:

技术图片

 

 

二、浮点数和定点数类型

在MySQL中,存储的小数都是使用浮点数和定点数来表示的。
浮点数的类型有2种:单精度浮点数类型(FLOAT)、双精度浮点类型(DOUBLE)。

定点数类型只有1种:DECIMAL类型。

占用的字节数和取值范围如下图:

技术图片

注意:--DECIMAL类型的取值范围与DOUBLE类型相同。
     --注意的是DECIMAL类型的有效取值范围是由M和D决定的。
     --其中,M表示的是数据的长度,D表示的是小数点后的长度。

 

 

三、时间与日期类型

在数据库中存储日期和时间,MySQL提供了表示日期和时间的数据类型:YEAR、DATE、TIME、DATETIME、TIMESTAMP

如下图列举了这些MySQL中日期和时间数据类型所对应的字节数、取值范围、日期格式以及零值。

技术图片

注意:如果插入的数值不合法,系统会自动将对应的零值插入数据库中。

 

 
三、字符串和二进制类型
为了存储字符串、图片和声音等数据,MySQL提供了字符串和二进制类型如下图:
类型 字节数(大小) 用途
CHAR 0-255字节 定长字节符
VARCHAR 0-65535字节 变长字节符
BLOB 0-65535字节 二进制形式的长文本数据
TINYBLOB 0-255字节 不超过255个字符的二进制字符串
MEDIUMBLOB 0-16777215字节 二进制形式的中等长度文本数据
LONGBLOB 0-4294967295字节 二进制形式的极大文本数据
TEXT 0-65535字节 长文本数据
TINYTEXT 0-255字节 短文本字符串
MEDIUMTEXT 0-16777215字节 中等长度文本数据
LONGTEXT 0-4294967295字节 极大文本数据
  注意:CHAR和VARCHAR类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。
   BINARY和VARBINARY类类似于CHAR和VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。
   BLOB是一个二进制大对象,可以容纳可变数量的数据。有4种BLOB类型:TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB。它们只是可容纳值的最大长度不同。
   有4种TEXT类型:TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT。这些对应4种BLOB类型,有相同的最大长度和存储需求。

 

 

 

 

以上是关于数据库数据类型的主要内容,如果未能解决你的问题,请参考以下文章

数据库中的数据类型与java语言中的数据类型

1.19.6.数据类型数据类型列表结构化的数据类型其他数据类型数据类型注解

数据库表中字段类型都有哪些?

数据类型和数值类型的区别

数据库的数据类型中,Unicode数据是啥意思

数据库中的十种数据类型都是啥