MySQL基础之数据类型

156 阅读2分钟

前言

最近有在看MySQL相关的内容,发现有个问题,就是很多MySQL基础相关的知识都不了解,只会使用ORM来操作MySQL,一看到原生的MySQL就发闷,这不行,我可是要励志成为伟大的程序员(手动滑稽),废话不多说,把我最近这两天看到MySQL数据类型相关的东西记录下来,防止日后脑袋短路,提前缓冲在这里

啰嗦一句

MySQL中有很多不同的数据类型,比如整型、浮点型、日期时间、字符串、枚举等等,而这些不同的数据类型,可以存储不同的数据,这就相当于不能把字符串类型的数据存储在整型定义的变量里是一个道理。总的来说MySQL的数据类型和其他语言的数据类型没有太大的差别,如果对计算机基础了解的话,学习起来很轻松,对于像我这样的菜鸟来说,真的太难了

好在有像掘金这样的平台,可以把学习记录下来,回顾探讨,没有比这更好的记录方式了。在学习这门课程之前,推荐一门MySQL基础知识的课程,如果你觉得MySQL官网的知识不好学,很难理解,看掘金小册子《MySQL是怎样使用的:从零蛋开始学习MySQL 》,语言有趣,学习简单,如果你对MySQL的操作仅仅停留在增删改查的阶段,对存储过程、视图等等概念操作不清楚,也可以额进行学习,最后提醒一句,这不是广告,你见过有免费的广告吗,这里就有(嘻嘻)。

概览

用一个思维导图把MySQL的数据类型概括一下,情况是这样的:

内容看似有点多,其实也不多,7种数据类型,每种类型又细致的分了几种,下面一一说下在MySQL中如何使用

整型

整型平时用到的最多,理解起来也是最容易的一种,在MySQL中整型被细致分为以下几种:

不同的整型,占用的存储空间也不相同,存储空间越大存储的整数也就越大,比如最大的整型BIGINT就占用了8个字节

在定义整型数据类型的时候,可以指定有没有符号,无符号整型只能存储正整数和0,无符号整型的正整数比有符号整型的 正整数大一倍,这是因为无符号整型比特位的最高位不用来记录符号位,记录的是数值位,比如一个无符号的TINYINT,它的8个比特位全是1的话,转换成十进制是255(2^8-1),同理其他类型的整型也是如此

整型的使用场景