Mariadb学习总结(三):数据类型

数据类型

数据类型->是一类具有相同属性、相同性质的数据分类的抽象。

例如:

字符串,就是一个个的字符组成一串就叫字符串…在计算机中可以划分子串、可以在字符串末尾添加新的字符,而这类操作就只能操作字符串数据,而不能操作整数。

数字型,我们最常接触的阿拉伯数字,可以进行算数运算、逻辑运算等操作

Mysql中的数据类型

MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。

数值类型

1.对于整数类型,可以限制其长度,格式如下:

M为数字的位数,例如TINYINT(3),就只能存储三位数,位数应不超过其所能表示的范围

SIGNED:默认即为有符号数

UNSIGNED:指定为无符号数

ZEROFILL:当不满足M位时,其前用0填充,且为变为无符号数

2.对于浮点数,可限制其整体位数和小数点后位数

M为总的位数,D为小数点后的位数

ZEROFILL对于浮点型,起作用等同于UNSIGNED

日期和时间类型

格式缩写: 日期时间格式,除了标准的格式以外还支持松散的格式。

创建测试表,结构如下:

对于DATE型:YY-MM-DD、YYMMDD、YYYY/MM/DD

对于TIME型:'D HH:MM:SS'、'HH:MM:SS'、'HH:MM'、'D HH:MM'、'D HH', 'SS'、 'HHMMSS'

D代表天,即TIME+D*24

对于DATETIME和TIMESTAMP这两种格式,即是上面时间简写格式的缩写,例如:

对于TIMESTAMP这种格式,比较常用吧应该说,其存储的是自'1970-01-01 00:00:00'到存储时间的毫秒数,其默认值可以为CURRENT_TIMESTAMP或其同义词:

字符串类型

CHAR和VARCHAR类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。

BINARY和VARBINARY类类似于CHAR和VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。

BLOB是一个二进制大对象,可以容纳可变数量的数据:

有4种BLOB类型:TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB。它们只是可容纳值的最大长度不同。

有4种TEXT类型:TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT。这些对应4种BLOB类型,有相同的最大长度和存储需求。

其他类型

枚举型:ENUM('value1','value2',…)

存储字节:因其存储的是元素编号,所以对于0-255个元素,只占一个字节,而255-65535则占两个元素

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180505A0ABLY00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券