Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >mysql基本数据类型

mysql基本数据类型

作者头像
OECOM
发布于 2020-07-01 09:19:11
发布于 2020-07-01 09:19:11
1.6K0
举报
文章被收录于专栏: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。下面的表显示了需要的每个整数类型的存储和范围。

当该字段数值比较大时,推荐使用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

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在5.6.4版本后,timestamp与datetime支持到微秒。

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

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

国际化系统推荐使用timestamp。

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

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

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MySQL 数据类型
数值类型 MySQL支持所有标准SQL数值数据类型。 这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。 关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。 BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。 作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了
joshua317
2018/04/09
2K0
MySQL 数据类型
MySQL中定义数据字段的类型对你数据库的优化是非常重要的。 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 ---- 数值类型 MySQL支持所有标准SQL数值数据类型。 这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。 关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。 BIT数据类型保存位字段值,并且支持MyISA
福贵
2018/04/12
1.6K0
MySQL 数据类型
这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。
用户6884826
2021/07/07
1.9K0
Mysql常见数据类型探索
这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL 和 NUMERIC),以及近似数值数据类型(FLOAT、REAL 和 DOUBLE PRECISION)。
九转成圣
2024/05/24
1460
MySQL常见的数据类型[通俗易懂]
  数据类型是指列、存储过程参数、表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型。
全栈程序员站长
2022/07/22
1.5K0
MySQL常见的数据类型[通俗易懂]
开心档-软件开发入门之MySQL 数据类型
MySQL 支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。
iOS程序应用
2022/12/29
2500
MySQL从零开始:05 MySQL数据类型
距离上次更新 MySQL 从零开始系列,已经过去了十几天,时间隔得有点长,由于我选用的是 MySQL 的最新版本,网上的教程大多停留在 MySQL 5.x,所以要参阅一下官方文档,而文档是英文的,看起来比较耗时,希望大家可以理解,此系列一定会更新到底!
王强
2018/08/09
2.6K0
MySQL从零开始:05 MySQL数据类型
MySQL创建数据表和MySQL数据类型
实例解析: * 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。 * AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。 * PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。 * ENGINE 设置存储引擎,CHARSET 设置编码。
周小董
2019/03/25
6.4K0
MySQL创建数据表和MySQL数据类型
MySQL数据类型 详细讲解
MySQL数据类型 MySQL支持多种数据类型,主要有数值类型、日期/时间类型和字符串类型。 数值数据类型:包括整数类型TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT、浮点小数数据类型FLOAT和DOUBLE、定点小树类型DECIMAL。 日期/时间类型:包括YEAR、TIME、DATE、DATETIME和TIMESTAMP。 字符串类型:包括CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET等。 1.1 整数类型 数值型数
星哥玩云
2022/08/13
1.9K0
《MySQL入门很轻松》第4章:数据表中能存放的数据类型
MySQL支持多种数据类型,大致可以分为三类,分别是数值类型、日期和时间类型、字符串(字符)类型。
炒香菇的书呆子
2022/02/14
2.2K0
《MySQL入门很轻松》第4章:数据表中能存放的数据类型
Mysql-6-数据类型和运算符
1.mysql数据类型 (1)数值数据类型:包括整数类型tinyint、smallint、mediumint、int、bigint,浮点小数类型float和double,定点小数类型decimal。 (2)日期/时间类型:包括year、time、date、datetime和timestamp。 (3)字符串类型:包括char、varchar、binary、varbinary、blob、text、enum和set等 (4)二进制类型:包括bit、binary、varbinary、tinyblob、blob、m
用户1173509
2018/01/17
1.1K0
MySQL学习笔记
这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。
林祈
2020/09/15
1K0
MySQL支持的数据类型
这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。
changxin7
2019/09/10
1.8K0
mysql 数据类型
一.数值类型 Mysql支持所有标准SQL中的数值类型,其中包括严格数据类型(INTEGER,SMALLINT,DECIMAL,NUMBERIC),以及近似数值数据类型(FLOAT,REAL,DOUBLE PRESISION),并在此基础上进行扩展。 扩展后增加了TINYINT,MEDIUMINT,BIGINT这3种长度不同的整形,并增加了BIT类型,用来存放位数据。 整数类型 字节 范围(有符号) 范围(无符号) 用途 TINYINT
拾点阳光
2018/05/10
3.2K0
MySQL数据类型详解
如果是GBK编码,则一个中文汉字占2个字节,英文占1个字节 如果是UTF8编码,则一个中文汉字占3个字节,而英文字母占1字节。 比如定义某个字段数据类型为:varchar(32),表示这个可以存储 32 个字符,此时表示的是字符,所以跟中英文无关,也就是该字段可以存储 32 个中文,或者是 32 个英文,或者是 32 个中文和英文的混搭都行。但如果字符数超过 32 个的话就会报错。
终有救赎
2023/10/16
4450
MySQL数据类型详解
MySQL数据库基础知识_MySQL数据库的特点
查看mysql中的所有库:show databases; 创建库:create database 库名称;—-》create database if not exists 库名称;如果不存在该库,则创建 删除库:drop database 库名称; 选择使用数据库:use 库名称; 显示当前使用的数据库:select database();
全栈程序员站长
2022/09/24
6.5K0
MySQL数据库基础知识_MySQL数据库的特点
MySQL(数据类型和完整约束)
default默认值,创建列时可以指定默认值,当插入数据时如果未主动设置,则自动添加默认值
全栈程序员站长
2022/07/21
1.1K0
【MySQL】03_数据类型
整数类型一共有 5 种,包括 TINYINT、SMALLINT、MEDIUMINT、INT(INTEGER)和 BIGINT。 主要存贮的是数字类型数据,常用 INT 类型存储 它们的区别如下表所示:
鸡先生
2022/10/29
2.3K0
【MySQL】03_数据类型
MySQL数据类型
MySQL不同存储引擎可能会有不同。下面的内容以InnoDB为主。 选择数据类型的步骤 确定合适的大类型:数字、字符串、时间、二进制 确定具体的类型:有无符号、取值范围、变长定长等。 整数类型 类型 字节数 范围 TNIYINT 1 -128~127 SMALLINT 2 -32767~32768 MEDIUMINT 3 -8388608~8388607 INT 4 -2147483648~2147483647 BIGINT 8 -9223372036854775808~922337203685477
linjinhe
2018/06/06
2.9K0
MySQL操作之数据类型
MySQL提供了5种数据类型:整数类型、浮点数类型、定点数类型、日期和时间类型、字符串类型和二进制类型。
ha_lydms
2023/08/09
3070
MySQL操作之数据类型
相关推荐
MySQL 数据类型
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档