MySQL入门笔记 - 数据类型
参考书籍《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入门笔记 - 数据类型的更多相关文章
- MySQL入门笔记
MySQL入门笔记 版本选择: 5.x.20 以上版本比较稳定 一.MySQL的三种安装方式: 安装MySQL的方式常见的有三种: · rpm包形式 · 通用二进制 ...
- MySQL入门笔记(一)
一.数据类型 1. 整型 2. 浮点型 3. 字符型 4. 日期时间型 二.数据库操作 1. 创建库 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_nam ...
- MySQL入门笔记(二)
MySQL的数据类型.数据库操作.针对单表的操作以及简单的记录操作可参考:MySQL入门笔记(一) 五.子查询 子查询可简单地理解为查询中的查询,即子查询外部必然还有一层查询,并且这里的查询并非仅 ...
- MySQL入门笔记 - 视图
参考书籍<MySQL入门很简单> 1.视图定义 视图是从一个或者多个表中导出来的虚拟的表,透过这个窗口可以看到系统专门提供的数据,使用户可以只关心对自己有用的数据,方便用户对数据操作,同时 ...
- MySQL入门笔记 - 数据库概述
参考书籍<MySQL入门很简单> 1.数据库 数据库(DataBase)是一个存储数据的仓库,将数据按照特定的规律存储在磁盘上. 2.数据存储方式 数据存储方式分为3个阶段:人工管理阶段. ...
- MySQL入门笔记一
MySQL应用笔记 一MySQL关系型数据库.开源,中小型公司常用类型的数据库Oracle 大型公司常用数据库 MySQL基本的命令一. 创建.删除.查看数据库(database)创建库creat ...
- MYSQL学习笔记——数据类型
mysql的数据类型可以分为三大类,分别是数值数据类型.字符串数据类型以及日期时间数据类型. 数值数据类型 ...
- MySQL学习笔记--数据类型
一.数据类型(内容参考<SQL学习指南>)不完整 1.文本类型 文本类型 最大字节数 tinytext 255 text 65535 varchar 65536 mediumtext 16 ...
- MYSQL基础笔记(六)- 数据类型一
数据类型(列类型) 所谓数据烈性,就是对数据进行统一的分类.从系统角度出发时为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中讲数据类型分成三大类:1.数值类型,2.字符串类型和时间日期 ...
随机推荐
- 如何理解Python中的if __name__ == '__main__'
1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明'):在你自己眼中,你是你自己(__name__ == '_ ...
- Comparator.comparing比较排序
使用外部比较器Comparator进行排序 当我们需要对集合的元素进行排序的时候,可以使用java.util.Comparator 创建一个比较器来进行排序.Comparator接口同样也是一个函数式 ...
- 5 秒创建 k8s 集群[转]
据说 Google 的数据中心里运行着超过 20 亿个容器,而且 Google 十年前就开始使用容器技术. 最初,Google 开发了一个叫 Borg 的系统(现在命令为 Omega)来调度如此庞大数 ...
- ssget使用方法
语法: (ssget [sel-method] [pt1 [pt2]] [pt-list] [filter-list]) ssget 的参数均为可选参数,需要注意的是可选参数之间的组合条件.以下语法表 ...
- element-ui date-picker 设置结束时间大于等于开始时间且开始时间小于等于结束时间
Part.1 问题 date-picker 组件在使用时,默认对时间是没有限制的,可以随便选择区间,官方文档添加了快捷选项,如:一周丶一月... 但是从用户体验方面出发,我们还是希望对时间进行有利的 ...
- 【搜索】P1019 单词接龙
题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合 ...
- Mac下Apache服务器的初步搭建
回送地址 127.0.0.1(localhost) ping 这个地址可以检测网卡是否正常 ping 本地地址如果不正常说明网线挂了 // 启动 sudo apachectl -k start ...
- 左右分栏页面右侧无法出现滚动条bug
问题记录 项目比较老了,左右分栏的页面,导航栏右边是一个iframe组成的页面,通过某个操作后,页面右侧内容区域无法实现滚动 问题查明 遇见过好几次,最后查明,总结一句话,修改了右侧页面body的ov ...
- bzoj3774 最优选择
题目描述: 小N手上有一个N*M的方格图,控制某一个点要付出Aij的代价,然后某个点如果被控制了,或者他周围的所有点(上下左右)都被控制了,那么他就算是被选择了的.一个点如果被选择了,那么可以得到Bi ...
- 详解Spring面向切面编程(AOP)三种实现
一.什么是AOP AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善. ...