整数

整数有 TINYINT, SMALLINT, MEDIUMINT, INT 和 BIGINT 类型。

占用    8          ,  16            24,            32,     64      bit。

为整数指定长度没有意义,如 INT(11) ,它能存储的还是 32 位数据。

实数

DECIMAL 运算没有精度丢失。

FLOAT,DOUBLE 运算有精度丢失。

DECIMAL 可以存储准确的小数和整数位,如 DECIMAL(18,9)

由于 DECIMAL 在空间占用上比较多,并且运算复杂,一般只用来存储不允许精度丢失,并且要得到准确的小数位数的场合,比如说金融数据。

String 类型

1. VCHAR 类型和 CHAR 类型

VARCHAR 用来存储变长的字符数据,并且需要额外的一到两个字节来存储字符数据的长度。

VARCHAR 一般用来存储 5000 字符以下的数据。

CHAR 用来存储定长的字符数据。适用于列的长度都非常短或者存储数据的长度近似一致的场合。如 MD5,存储 Y,N 数据。

2. BLOB 和 TEXT 类型

BLOB 和 TEXT 用在存储大量数据(包括二进制和字符型)的场合。

两者的区别在于,BLOB 存储的是二进制数据,而 TEXT 存储的是字符数据

TEXT 一般用来存储 5000 字符以上的数据,对于这样的数据,应该单独独立出一张表,用 id 对应,以免影响母表的索引效率。

3. 在一些场合,可以使用 enum 来代替 STRING 类型

DATE 和 TIME 类型

DATE 的精度是秒,格式是 YYYYMMDDHHMMSS,和时区无关。

存储范围: 1001-9999

TIMESTAMP 的精度是S,存储的是从1970.1.1 零点到当前过去的秒数。依赖于时区。

MySQL 数据类型总结及选取准则的更多相关文章

  1. MySQL数据类型--日期时间

    一.博客前言 自接触学习MySQL已有一段时间了,对于MySQL的基础知识还是略懂略懂的.在这一路学习过来,每次不管看书还是网上看的资料,对于MySQL数据类型中的时间日期类型总是一扫而过,不曾停下来 ...

  2. 详解MySQL数据类型

    原文地址http://www.cnblogs.com/xrq730/p/5260294.html,转载请注明出处,谢谢! 前言 很久没写文章,也有博友在我的有些文章中留言,希望我可以写一些文章,公司项 ...

  3. MySQL(数据类型和完整约束)

    MySQL数据类型 MySQL支持多种数据类型,主要有数值类型.日期/时间类型和字符串类型. 1.数值数据类型 包括整数类型TINYINT.SMALLINT.MEDIUMINT.INT.BIGINT. ...

  4. MySQL数据类型以及基本使用详解

    MySQL数据类型以及基本使用详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MySQL服务器的主要组件 我们知道MySQL的主要组件主要是由服务端(mysqld)和客户端 ...

  5. 2-14-2 MySQL数据类型

    MySQL数据类型: 对数据进行分类,针对不同分类进行不同的处理. 1. 使系统能够根据数据类型来操作数据. 2. 预防数据运算时出错. 3. 更有效的利用空间. 数据分类,可以使用最少的存储,来存放 ...

  6. 🚴‍♂️全套MySQL数据库教程_Mysql基础入门教程,零基础小白自学MySQL数据库必备教程☔ #002 # 第二单元 MySQL数据类型、操作表#

    二.本单元知识点概述 (Ⅰ)知识点概述 二.本单元教学目标 (Ⅰ)重点知识目标 1.Mysql的数据类型2.如何选择数据类型3.创建表4.修改表5.删除表 (Ⅱ)能力目标 1.熟练创建数据库及删除数据 ...

  7. mysql 数据类型

    1.整型 MySQL数据类型 含义(有符号) tinyint(m) 1个字节  范围(-128~127) smallint(m) 2个字节  范围(-32768~32767) mediumint(m) ...

  8. MySQL 数据类型 详解

    MySQL 数据类型 详解 MySQL 的数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数或小数.许多不同的子类型对这些类别中的每一个都是可用的,每个子类型支持不同大小的数据,并且 My ...

  9. MySQL数据类型的验证

    CHAR char (M) M字符,长度是M*字符编码长度,M最大255. 验证如下: mysql)) default charset=utf8; ERROR (): ); use BLOB or T ...

随机推荐

  1. 菜鸟浅谈“诈骗”希望“治未病"

    关于目前诈骗.社工数据的套路,说道说道~ 一.前言 这篇文章没有什么高深的技术,只有普普通通的套路,主要也是有I春秋各位表哥与诈骗分子的交手有感而发! 二.正文 因为我们上网的或者其他条件下的人群,没 ...

  2. [Objective-C语言教程]日志处理(21)

    为了打印日志,可使用Objective-C编程语言中的NSLog方法,首先在HelloWorld示例中使用了这个方法. 下面来看一下打印“Hello World”字样的简单代码 - #import & ...

  3. Redis-Java 交互的应用

    一.首先介绍一下Redis Redis是目前业界使用最广泛的内存数据存储.相比memcached,Redis支持更丰富的数据结构,例如hashes, lists, sets等,同时支持数据持久化.除此 ...

  4. 【JavaScript】动态原型模式创建对象 ||为何不能用字面量创建原型对象?

    var proto = ""; function Person(name, age, job) { this.name = name; this.age = age; this.j ...

  5. jQuery 事件注册

    重点事件注册.on() <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset= ...

  6. [Re:从零开始的分布式] 0.x——Reids实现分布式锁

    上节提到了,分布式锁通常应满足如下要求,互斥性.高可用.高效率.可重入.锁失效这五个基本原则.由于Redis自身“快”的特点,所以高效率可以看作满足. 下文在单机情况下与多机情况下,对利用Redis实 ...

  7. 初入Android Studio的我

    最近由于工作上的需要,领导让我去学点Android  以前因为兴趣的原因也自己搞过一点点  所以就欣然领命了 那么在此之前 我们来了解一下什么是Android 这是链接 自己去看吧 哈哈哈 https ...

  8. springboot项目:登录 登录aop拦截 使用Redis与cookie 进行设置获取清除操作

    登录.登出: 第一步:在pom文件中引入依赖 <dependency> <groupId>org.springframework.boot</groupId> &l ...

  9. CentOS 开启安装EPEL YUM源

    我们用yum安装软件时,经常发现我们的yum源里面没有该软件,需要自己去wget,然后configure,make,make install,太折腾了. 其实,CentOS 还有一个源叫做 EPEL ...

  10. SymbolTable

    在ClassReader中有两个重要的属性,如下定义: /** A hashtable containing the encountered top-level and member classes, ...