MySQL中的数据类型

一.MySQL中的数值类型分类

MySQL中数值类型主要有三类:数字类型,字符串类型,时间类型。

1.数字类型

1.1整数

tinyint                  1字节

smallint               2字节

mediumint           3字节

int                         4字节

bigint                    8字节

1.2浮点数

float                        4字节

double                    8字节

decimal                   自定义

注意:decimal用来表示高精度的定点数,他是采用字符串的形式来保存小数的。

          decimal的使用方式为:decimal(M,N)   含义:它占有了M(1-65)位的数字,但是小数部分为N(0-30)位,当你的小数不满N位时他会使用0填充至N位

      讲解:decimal(5,3)那么他表示这个小数的为长度为5位,小数部分占3位。比如说2.31——>2.310,又或者20.31——>20.310,

                      注意:201.31——>201.310此时出现错误虽然他的小数部分为3位,但是他的整个长度超出了5,所以现在他无法存储。

二.MySQL中的字符串类型

MySQL中的字符串的类型有三类:普通的文本字符串类型,可变类型,特殊类型

2.1普通类型文本字符串:

char(N):定长字符,固定长度,当你的长度小于N时使用空格填充,当你的长度大于N时,他是截取。N的取值范围为:0-255

varchar(N):长度可以变化,当你的长度小于N时,他不会有N个存储空间,他只有你的实际长度加一,当然超过N也是截取。

2.2可变类型

TEXT:适合存储长文本。

BLOB:二进制文件,视频,图片。但是通常都是放置一个文件路径,不会是一个二进制文件。

2.3特殊类型

Set:在创建表时,就指定SET类型的取值范围。SET类型的值可以取列表中的一个元素或者多个元素的组合。

Enum :ENUM类型(枚举类型),与C#的概念一样,在定义时指定取值范围。ENUM类型只能从成员中选择一个,而SET类型可以选择多个。

 三.MySQL中时间类型

类型                              范围                                  格式

DATE             1001-01-01   9999-12-31      日期 yyyy-mm-dd

TIME              -835:58:59    835:59:59         时间 hh:mm;ss

DATETIME     1001-01-01 00:00:00             日期和时间  yyyy-mm-dd hh:mm;ss

                       9999-12-31 23:59:59

YEAR              1901-2155                              年

原文地址:https://www.cnblogs.com/SAM-CJM/p/9645018.html