00:00
接下来的话呢,咱们总结一下,上面呢,咱们把所有的这个类型呢,咱都说完了,那么到底咱们在实际开发当中应该如何去选择呢?啊,有的同学呢,可能看了这么多类型之后呢,脑子都已经嗡嗡的了,是吧,不知道该怎么选了,本来原来呢还知道,现在呢就完全懵了哈,所以说咱们读书的话呢,他有个这样的过程,就是先呢从薄到读厚,这里边儿我们要关注它很多的细节,像以前我们讲这个DDL的时候呢,现在就是一个薄的过程啊,我们说这个整形呢,你就用int这个浮点类型的时候,大家就先用了double。对吧?诶当时我们就简单的说了一下日期类型呢,就先用date类型,没有说其他的,那么读后的话呢,相当于我们就讲了啊,原来除了这些类型之外呢,我们还有非常丰富的一些类型,这块呢,就是读厚的过程,那么接下来的话呢,我们最后做一个小结,就是把它呢再去读薄,读薄,那最后呢,我们看一下在开发当中啊,有哪些这个点可以供我们去做借鉴的。在实际开发当中啊,我们说如果大家要去定义整形的话呢,那不出意外啊,你就用我们这个int类型去定义就可以了。
01:03
啊,去用int类型定义就可以了,如果要是小数类型呢,那就是浮点类型的了,是吧,那么大家呢,诶推荐呢,使用这个定点数的类型叫做decimal。而且这个戴这块呢,大家注意一下,咱们上面也讲了,它呢后边呢,是不是诶要去指定一下这个M和D啊,这个呢叫标度,这个叫精度,指明一下你总共呢是多少位,小数呢是占几位,因为这个呢,你要不指定的话呢,它默认的是不是就十逗号0YA IG呢,就没有那个小数位了啊这个整形这块呢,在8.0当中呢,是不是已经推荐你不要后边写那个小括号M了,是吧?OK。那如果呢,你要是日期时间类型的话呢,我们推荐呢,就用daytime了。那虽然说它占用的这个字节数呢,会多一些是吧?好,那这样做的好处呢,就是确保你的系统呢,不会因为数据类型的定义的出错了,比如说我们定义一个整形,前面也提到过,你定义的这个类型偏小啊,这个small int啊呃,那你定义完以后呢,回头呢,这个呃存储的数据呢,超出这个范围了,结果呢,整个这个呃存储就挂掉了,那我们呢,要用int的话呢,就保证它这个数据呢,至少不会因为空间不足呢挂掉。
02:06
所以说它这块呢,是属于它的好处,当然呢,诶我们选的这一类型呢,不一定意味着它的效率是比较高的,只能说这个可靠性相对来说是不错的是吧?诶那还有一些考虑的就是像精度的问题,就是都是我们要考虑的点,就是整体上来看的话呢,我们的一个默认选项啊。那具体细节来讲的话呢,其实还有其他的一些讲究啊,那这儿呢,大家会发现我们有专门的是不是说这个关于字符串类型啊,字符串类型那我们怎么去参考呢?这里呢,诶我呢寄出阿里巴巴的Java开发手册,在这个开发手册里边呢,它针对于我们这个字段定义这个类型方面呢,它有一段描述,那我把这段描述呢,就给大家拿过来了。来,我们一起看一下。说呢,任何字段如果是非负的,那么要给它加上,这个叫an。啊,尤其我们说的这个整形加上安三的以后呢,通常它这个存储的这个范围呢,是不是就扩大一倍了,因为你的一半负数呢,就不用取了,对吧?那对于这个浮点类型这种来讲呢,其实我们的加不加这个安都行啊,加不加都行啊接着看这是个强制的说小数类型呢,用这个decimal,禁止使用float double,那它用了一个词叫做禁止。
03:12
啊,主要因为的就是精度的问题啊,精度问题好,接着那如果呢,你存储的这个数据范围超过了这个DEC的一个范围了啊超过DEC范围怎么办呢?哎说呢,你就可以把这个数据呢,拆成整数部分和小数部分分开来进行存储。啊,应该很好理解是吧,这个呢,其实也是面试当中可能会被问到的一个点,那首先他会问说,那我们要存储这小数,你用什么类型,那是不是一定要说明用DEC啊,好,下个问题,那我们要超出DEC的范围怎么办呢?诶是不是就分开进行存储啊?哎,这就是一个处理的方案啊。行,那下边的话呢,针对字符串呢,就开始说了,如果说呢,咱们存储这个字符串呢,几乎的长度是相等的。啊,几乎长度是相等的,比如我们存储这个手机号码,那基本上都是相等的,我们就可以用这个叉类型啊,就是定长的了啊固定长度的比较合适对吧?那如果说呢,我们是一种变长的,那这个柱址有的长点有的短点的这种,那我们就可以呢,先用这个窝叉,那这个时候先注意它的长度呢,不要超过5000,那太长的话呢,用这个窝AR呢,其实也就不合适了,比较短的时候啊,然后我们用这个waterar去存储,然后呢,你一旦超过这个5000的话呢,那咱们就用这个test去存储了,而且呢,用test的话呢,还建议呢,咱们单独的把它是不是分离出来一张表去做,上面提到我们说那个空洞的问题是吧。
04:27
哎,这个我们不是也提到了这个事儿吗?哎,我们要避开这样一个点,好,这个呢,就是咱们整个呢,相当于在这个,呃,开发当中的一些经验,大家呢,哎,去遵守一下。OK,嗯,这个说完之后的话呢,咱们这个章节的课后练习。啊,这一章呢,其实我们不算是这个完整的一个新的这个内容的章节了啊,只是我们把这个类型这块呢,又整体的给大家做了一个扩容,所以说呢,这块章节练习这块呢,哎,我这块设计的就比较简单一些了啊,我就写了三个问题,第一个掌握MYSQL规范当中的各种数据类型。
05:01
啊,这里边就提到了,我们上面提到了有数值类型的是吧,有这个诶这个文本字符串类型的,日期时间类型的,二进制类型的,杰森类型的,诶innu set等等啊这个大家熟悉一下,第二个熟悉呢,数据类型常用的一些设置的属性啊这块属性这一块呢,咱们没有去,呃提到关于这个呃什么呀,约束这块的问题。这个呢,咱们下一章当中来讲这个事儿,那这块提到了,像有这个叫安散的呀,这个字符集呀,那包括呢,加这种小括号里边写明它的一个这个宽度啊是吧?这块呢,大家做一个了解啊,像我们说的那个DA的话呢,是不是一定要加上。一定要加上这个M和DOK,接着呢,就是掌握不同的类型,它的一个使用的场景,那最终呢,咱们是有一个总体的一个概括。啊,然后上边这块呢,在有一些位置呢,我也写了一些具体的开发中的经验啊,那么大家在这个那面试当中,或者我们实际生产环境当中呢,大家呢,诶可以把这个经验呢吸收一下,那像这个希望呢,能够对你在设计这个表的时候呢,能够起到一个比较大的一个帮助,OK,那么整个呢,我们关于这个数据类型精讲这一章呢,我们就到此结束。
我来说两句