前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mysql基本数据类型

mysql基本数据类型

作者头像
OECOM
发布2020-07-01 17:19:11
1.4K0
发布2020-07-01 17:19:11
举报
文章被收录于专栏:OECOMOECOM

mysql数据库分多钟数据类型,大类可以分为三种:数值类型、时间(日期)和字符(串)类型。

数值类型

MySQL支持所有标准SQL数值数据类型。

这些类型包括严格数值数据类型(integer、smallInt、decimal和numeric),以及近似数值数据类型(float、real和double precision)。

关键字int是integer的同义词,关键字dec是decimal的同义词。

BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。

作为SQL标准的扩展,MySQL也支持整数类型tinint、mediumint和bigint。下面的表显示了需要的每个整数类型的存储和范围。

mysql基本数据类型
mysql基本数据类型

当该字段数值比较大时,推荐使用bigint,假设存储用户的个人信息表,用户量达到百万千万级,id的自增长应该设置为bigint。

在设计表示经常会涉及到规定该字段的最大长度,比如int(11)和int(21),两者之间本质上没任何区别,11不会因为比21小,所占用的空间比21小,存储范围也不会小。只在某些显示上可能会有些不同。如果存1,其他位数会自动补0,int(11)补10,21补20个。

float和double分别为单精度和双精度,double精度更高一些。说道精度就涉及到了精度丢失的问题,比如钱被四舍五入的问题。上面表中提到的decimal是一个更精确地数据类型,经常用来存储交易相关的数据。其中DECIMAL(M,N),m代表总精度,范围是1<M<254,0<N<60,因为精度变高,其所占用的空间也更大。

tinyint比较适合于存储性别、省份,这是用数值来代表。如果用字符的话可以选择char或者enum均可。

字符串类型

字符串类型指char、varchar、binary、varbinary、blob、text、enum和set

mysql基本数据类型
mysql基本数据类型

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

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

blob是一个二进制大对象,可以容纳可变数量的数据。有 4 种 blob类型:tinyblob、blob、mediumblob 和 longblob。它们区别在于可容纳存储范围不同。

有 4 种 text类型:tintext、text、mediumtext 和 longtext。对应的这 4 种 blob类型,可存储的最大长度不同,可根据实际情况选择。

说到字符就不得不说一下编码格式,我们常用的是utf8(3个字节),基本的字符都能装下,但是表情字符emoji所占的是四个字符,这时就不够用了,好在mysql5.5.3版本以后支持一种新的编码格式utftmb4(4个字节)。

日期类型

表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。

每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。

TIMESTAMP类型有专有的自动更新特性。

mysql基本数据类型
mysql基本数据类型

mysql在5.6.4版本后,timestamp与datetime支持到微秒。

字段类型与时区的关联关系

timestamp会根据系统时区进行转换,datatime则不会。

国际化系统推荐使用timestamp。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-07-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数值类型
  • 字符串类型
  • 日期类型
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档