MySQL 数据类型总结及选取准则
整数
整数有 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 数据类型总结及选取准则的更多相关文章
- MySQL数据类型--日期时间
一.博客前言 自接触学习MySQL已有一段时间了,对于MySQL的基础知识还是略懂略懂的.在这一路学习过来,每次不管看书还是网上看的资料,对于MySQL数据类型中的时间日期类型总是一扫而过,不曾停下来 ...
- 详解MySQL数据类型
原文地址http://www.cnblogs.com/xrq730/p/5260294.html,转载请注明出处,谢谢! 前言 很久没写文章,也有博友在我的有些文章中留言,希望我可以写一些文章,公司项 ...
- MySQL(数据类型和完整约束)
MySQL数据类型 MySQL支持多种数据类型,主要有数值类型.日期/时间类型和字符串类型. 1.数值数据类型 包括整数类型TINYINT.SMALLINT.MEDIUMINT.INT.BIGINT. ...
- MySQL数据类型以及基本使用详解
MySQL数据类型以及基本使用详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MySQL服务器的主要组件 我们知道MySQL的主要组件主要是由服务端(mysqld)和客户端 ...
- 2-14-2 MySQL数据类型
MySQL数据类型: 对数据进行分类,针对不同分类进行不同的处理. 1. 使系统能够根据数据类型来操作数据. 2. 预防数据运算时出错. 3. 更有效的利用空间. 数据分类,可以使用最少的存储,来存放 ...
- 🚴♂️全套MySQL数据库教程_Mysql基础入门教程,零基础小白自学MySQL数据库必备教程☔ #002 # 第二单元 MySQL数据类型、操作表#
二.本单元知识点概述 (Ⅰ)知识点概述 二.本单元教学目标 (Ⅰ)重点知识目标 1.Mysql的数据类型2.如何选择数据类型3.创建表4.修改表5.删除表 (Ⅱ)能力目标 1.熟练创建数据库及删除数据 ...
- mysql 数据类型
1.整型 MySQL数据类型 含义(有符号) tinyint(m) 1个字节 范围(-128~127) smallint(m) 2个字节 范围(-32768~32767) mediumint(m) ...
- MySQL 数据类型 详解
MySQL 数据类型 详解 MySQL 的数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数或小数.许多不同的子类型对这些类别中的每一个都是可用的,每个子类型支持不同大小的数据,并且 My ...
- MySQL数据类型的验证
CHAR char (M) M字符,长度是M*字符编码长度,M最大255. 验证如下: mysql)) default charset=utf8; ERROR (): ); use BLOB or T ...
随机推荐
- 菜鸟浅谈“诈骗”希望“治未病"
关于目前诈骗.社工数据的套路,说道说道~ 一.前言 这篇文章没有什么高深的技术,只有普普通通的套路,主要也是有I春秋各位表哥与诈骗分子的交手有感而发! 二.正文 因为我们上网的或者其他条件下的人群,没 ...
- [Objective-C语言教程]日志处理(21)
为了打印日志,可使用Objective-C编程语言中的NSLog方法,首先在HelloWorld示例中使用了这个方法. 下面来看一下打印“Hello World”字样的简单代码 - #import & ...
- Redis-Java 交互的应用
一.首先介绍一下Redis Redis是目前业界使用最广泛的内存数据存储.相比memcached,Redis支持更丰富的数据结构,例如hashes, lists, sets等,同时支持数据持久化.除此 ...
- 【JavaScript】动态原型模式创建对象 ||为何不能用字面量创建原型对象?
var proto = ""; function Person(name, age, job) { this.name = name; this.age = age; this.j ...
- jQuery 事件注册
重点事件注册.on() <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset= ...
- [Re:从零开始的分布式] 0.x——Reids实现分布式锁
上节提到了,分布式锁通常应满足如下要求,互斥性.高可用.高效率.可重入.锁失效这五个基本原则.由于Redis自身“快”的特点,所以高效率可以看作满足. 下文在单机情况下与多机情况下,对利用Redis实 ...
- 初入Android Studio的我
最近由于工作上的需要,领导让我去学点Android 以前因为兴趣的原因也自己搞过一点点 所以就欣然领命了 那么在此之前 我们来了解一下什么是Android 这是链接 自己去看吧 哈哈哈 https ...
- springboot项目:登录 登录aop拦截 使用Redis与cookie 进行设置获取清除操作
登录.登出: 第一步:在pom文件中引入依赖 <dependency> <groupId>org.springframework.boot</groupId> &l ...
- CentOS 开启安装EPEL YUM源
我们用yum安装软件时,经常发现我们的yum源里面没有该软件,需要自己去wget,然后configure,make,make install,太折腾了. 其实,CentOS 还有一个源叫做 EPEL ...
- SymbolTable
在ClassReader中有两个重要的属性,如下定义: /** A hashtable containing the encountered top-level and member classes, ...