参考书籍《MySQL入门很简单》

数据类型是数据的一种属性,可以决定数据的存储方式、有效范围和相应的限制。

1.整数类型

  1.1 MySQL的整数类型

MySQL中int类型和integer类型是一样的。

  1.2 指定类型的显示宽度

数据类型(显示宽度)

默认显示宽度:

一个数据类型的默认显示宽度刚好能显示该数据类型的所有值。默认显示宽度其实也是最大宽度。

如果设置的宽度小于默认宽度,依然可以插入大于显示宽度但是不超过默认宽度的值。这时候设置的宽度在显示该记录时失效。但是不能插入超过默认宽度的数值。

  1.3 zerofill参数

参数不足的显示空间由0来填补。在使用该参数的时候,会自动加上unsigned属性,即该整数类型只能表示无符号数,且显示宽度比默认宽度小1.

  1.4 auto_increment属性

自增字段,在插入新的记录时,该字段的值都会在前一条记录的基础上加1.

2.浮点数类型和定点数类型

  2.1 float, double, cecimal 

MySQL使用浮点数和定点数表示小数。浮点数包括单精度浮点数(float)和双精度浮点数(double)。定点数类型就是decimal型。

decimal型的取值范围与double相同。decimal的有效取值范围由M和D决定,并且decimal的字节数是M+2,也就是说定点数的存储空间是根据其精度决定的。

  2.2 指定精度

数据类型(M, D)

M:精度,是数据的总长度,小数点不占位数;D:标度,指小数点后的长度。

以上指定小数精度的方法对于浮点数和定点数都是适用的,但是,不是浮点数的标准方法,在定义浮点数的时候尽量不要使用,否则会影响数据库迁移。

  2.3 精度控制

插入值的精度高于实际定义的精度,系统会自动四舍五入,使值的精度达到要求。区别在于:

  • float和double型在四舍五入的时候不会报错,而decimal型会有警告;
  • float和double型默认保存实际精度,这与操作系统和硬件的精度有关;
  • decimal型默认整数位为10,小数位为0,即默认整数;
  • MySQL中定点数以字符串形式存储,精度比浮点数要高;
  • 浮点数会出现误差(浮点数一直存有的缺陷),如果对数据精确度要求比较高,选择定点数。

MySQL入门笔记 - 数据类型的更多相关文章

  1. MySQL入门笔记

    MySQL入门笔记 版本选择: 5.x.20 以上版本比较稳定 一.MySQL的三种安装方式: 安装MySQL的方式常见的有三种: ·          rpm包形式 ·          通用二进制 ...

  2. MySQL入门笔记(一)

    一.数据类型 1. 整型 2. 浮点型 3. 字符型 4. 日期时间型 二.数据库操作 1. 创建库 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_nam ...

  3. MySQL入门笔记(二)

    MySQL的数据类型.数据库操作.针对单表的操作以及简单的记录操作可参考:MySQL入门笔记(一) 五.子查询   子查询可简单地理解为查询中的查询,即子查询外部必然还有一层查询,并且这里的查询并非仅 ...

  4. MySQL入门笔记 - 视图

    参考书籍<MySQL入门很简单> 1.视图定义 视图是从一个或者多个表中导出来的虚拟的表,透过这个窗口可以看到系统专门提供的数据,使用户可以只关心对自己有用的数据,方便用户对数据操作,同时 ...

  5. MySQL入门笔记 - 数据库概述

    参考书籍<MySQL入门很简单> 1.数据库 数据库(DataBase)是一个存储数据的仓库,将数据按照特定的规律存储在磁盘上. 2.数据存储方式 数据存储方式分为3个阶段:人工管理阶段. ...

  6. MySQL入门笔记一

    MySQL应用笔记   一MySQL关系型数据库.开源,中小型公司常用类型的数据库Oracle 大型公司常用数据库 MySQL基本的命令一. 创建.删除.查看数据库(database)创建库creat ...

  7. MYSQL学习笔记——数据类型

    mysql的数据类型可以分为三大类,分别是数值数据类型.字符串数据类型以及日期时间数据类型. 数值数据类型                                               ...

  8. MySQL学习笔记--数据类型

    一.数据类型(内容参考<SQL学习指南>)不完整 1.文本类型 文本类型 最大字节数 tinytext 255 text 65535 varchar 65536 mediumtext 16 ...

  9. MYSQL基础笔记(六)- 数据类型一

    数据类型(列类型) 所谓数据烈性,就是对数据进行统一的分类.从系统角度出发时为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中讲数据类型分成三大类:1.数值类型,2.字符串类型和时间日期 ...

随机推荐

  1. 如何理解Python中的if __name__ == '__main__'

    1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明'):在你自己眼中,你是你自己(__name__ == '_ ...

  2. Comparator.comparing比较排序

    使用外部比较器Comparator进行排序 当我们需要对集合的元素进行排序的时候,可以使用java.util.Comparator 创建一个比较器来进行排序.Comparator接口同样也是一个函数式 ...

  3. 5 秒创建 k8s 集群[转]

    据说 Google 的数据中心里运行着超过 20 亿个容器,而且 Google 十年前就开始使用容器技术. 最初,Google 开发了一个叫 Borg 的系统(现在命令为 Omega)来调度如此庞大数 ...

  4. ssget使用方法

    语法: (ssget [sel-method] [pt1 [pt2]] [pt-list] [filter-list]) ssget 的参数均为可选参数,需要注意的是可选参数之间的组合条件.以下语法表 ...

  5. element-ui date-picker 设置结束时间大于等于开始时间且开始时间小于等于结束时间

    Part.1  问题 date-picker 组件在使用时,默认对时间是没有限制的,可以随便选择区间,官方文档添加了快捷选项,如:一周丶一月... 但是从用户体验方面出发,我们还是希望对时间进行有利的 ...

  6. 【搜索】P1019 单词接龙

    题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合 ...

  7. Mac下Apache服务器的初步搭建

    回送地址  127.0.0.1(localhost)  ping 这个地址可以检测网卡是否正常 ping 本地地址如果不正常说明网线挂了   // 启动 sudo apachectl -k start ...

  8. 左右分栏页面右侧无法出现滚动条bug

    问题记录 项目比较老了,左右分栏的页面,导航栏右边是一个iframe组成的页面,通过某个操作后,页面右侧内容区域无法实现滚动 问题查明 遇见过好几次,最后查明,总结一句话,修改了右侧页面body的ov ...

  9. bzoj3774 最优选择

    题目描述: 小N手上有一个N*M的方格图,控制某一个点要付出Aij的代价,然后某个点如果被控制了,或者他周围的所有点(上下左右)都被控制了,那么他就算是被选择了的.一个点如果被选择了,那么可以得到Bi ...

  10. 详解Spring面向切面编程(AOP)三种实现

    一.什么是AOP AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善. ...