【lesson4】数据类型之数值类型

文章目录

  • 数据分类
  • 数值类型
    • tinyint类型
      • 有符号类型测试
      • 无符号类型测试
    • bit类型
      • 测试
    • float类型
      • 有符号测试
      • 无符号测试
    • decimal类型
      • 测试

数据分类

在这里插入图片描述

数值类型

tinyint类型

说明:tinyint
有符号能存储的范围是-128-127,无符号能存储的范围是0~255

有符号类型测试

1.建表
在这里插入图片描述
在这里插入图片描述
2.插入测试
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
从测试中我们可以看到,数据只保留整数对小数采用四舍五入的方式并且只能保存范围内的数字,如果超出则不让插入。

无符号类型测试

1.建表
在这里插入图片描述
2.插入测试
在这里插入图片描述
在这里插入图片描述
从上面的两个示例中我们可以看出,如果插入数据超过范围,MySQL直接拦截。

反过来如果我们已近有数据被成功插入到MySQL中了,那么我们的插入一定是合法的。

所以MySQL中,一般而言数据类型本身也是一种约束,倒逼程序员,让程序员尽可能进行正确的插入。

约束是用来约束使用者的。

另外如果你不是一个很好的使用者,MySQL也能保证数据插入的合法性。就能保证数据库中的数据是可预期,完整的。

MySQL表中建立属性列:
列名称在前,类型在后:
例如:num tinyint;

bit类型

使用方式bit(m)
说明:
bit是位类型,
m为指定的位数,如果写m,默认为1,
m的范围是1-64;

测试

1.建表
在这里插入图片描述
2.插入测试
在这里插入图片描述
我们可以看到,m如果为1插入的范围是0-1,超出则不允许插入,那么为什么num没有显示出来呢?
因为bit字段在显示时,是按照ASCII码对应的值显示。
在这里插入图片描述
当我们把它改为10进制的时候就可以显示出来了。
3.测试总结

  • a.num默认为ascll码方式显示
  • b.可以用hex函数转化为十进制

float类型

使用方式 :float(m,n)
说明:
m为指定显示长度(包括小数,不包括小数点)
n为指定小数位数

如果定义的是float(4,2) unsigned 这时,因为把它指定为无符号的数,范围是 0 ~ 99.99
也就是直接舍弃负数部分

有符号测试

1.建表
在这里插入图片描述

2.插入测试
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.根据测试总结

  • a.整数部分在四舍五入之后不能超过规定位数

  • b.小数部分,会按规定位数进行四舍五入的舍弃

  • c.有符号的,则表示范围是-99.99 ~
    99.99

无符号测试

1.建表
在这里插入图片描述
2.插入测试
在这里插入图片描述
3.总结

  • a.无符号浮点数直接砍掉小数部分
  • b.其余的与有符号浮点数一样

decimal类型

使用方式 :float(m,n)
说明:
m为指定显示长度(包括小数,不包括小数点)
n为指定小数位数

decimal和float很像,但是有区别:float和decimal表示的精度不一样,float会有进度的损失而decimal可以很好的规避这个问题。

测试

1.建表
在这里插入图片描述
2.插入测试
在这里插入图片描述
我们可以看到精度确实损失了。
其余的与float类型一样这里就不过多演示,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/213657.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯-动态规划专题-子数组系列,双指针

目录 一、单词拆分 二、环绕字符串中唯一的子字符串 双指针-三数之和 ArrayList(Arrays.asList(array)) 四、四数之和(思路和三数之和一样,只是多了一层循环) 一、单词拆分 1.状态表示 dp[i]:到达i位置结尾,能否被dict拆分 …

Terraform实战(二)-terraform创建阿里云资源

1 初始化环境 1.1 创建初始文件夹 $ cd /data $ mkdir terraform $ mkdir aliyun terraform作为terraform的配置文件夹,内部的每一个.tf,.tfvars文件都会被加载。 1.2 配置provider 创建providers.tf文件,配置provider依赖。 provider…

想学编程,但不知道从哪里学起,应该怎么办?

怎样学习任何一种编程语言 我将教你怎样学习任何一种你将来可能要学习的编程语言。本书的章节是基于我和很多程序员学习编程的经历组织的,下面是我通常遵循的流程。 1.找到关于这种编程语言的书或介绍性读物。 2.通读这本书,把…

基于Java Swing泡泡龙游戏(Java毕业设计)

大家好,我是DeBug,很高兴你能来阅读!作为一名热爱编程的程序员,我希望通过这些教学笔记与大家分享我的编程经验和知识。在这里,我将会结合实际项目经验,分享编程技巧、最佳实践以及解决问题的方法。无论你是…

AP9111手电筒专用集成电路芯片 单节干电池 LED手电筒IC

概述 AP9111 是 LED 手电筒专用集成电路芯片 ,是一款采用大规模集成电路技术,专门针对单节干电池的 LED 手电筒设计的一款专用集成电路。外加 1 个电感元件,即可构成 LED 手电筒驱动电路板。AP 9111 性能优越、可靠性高、使用简单、生产一致…

六级高频词汇3

目录 单词 参考链接 单词 400. nonsense n. 胡说,冒失的行动 401. nuclear a. 核子的,核能的 402. nucleus n. 核 403. retail n. /v. /ad. 零售 404. retain vt. 保留,保持 405. restrict vt. 限制,约束 406. sponsor n. …

聊个开心的敏捷话题——40小时工作制

近年来,加班现象在很多行业已经普遍制度化,甚至“996”已成为一些行业标签。企业高强度的压榨让员工不堪重负,且时常由此引发的各种悲剧也并不鲜见。 所以,今天我们一起来聊一个开心轻松的话题——极限编程的40h工作制原则。 40…

【环境搭建】ubuntu22安装ros2

基于某种特殊需求,从Ubuntu16到22目前都尝试过安装ros、ros2 参考1:http://t.csdnimg.cn/DzvSe 参考2:http://t.csdnimg.cn/sOzr1 1.设置locale sudo apt update && sudo apt install locales sudo locale-gen en_US en_US.UTF-8 s…

Spring的IOC容器初始化流程

Spring的IOC容器初始化流程 IOC容器初始化在SpringApplication对象创建完毕执行run方法时执行refreshContext()时开始。 准备BeanFactory,设置其类加载器和environment等 执行BeanFactory后置处理器,扫描要放入容器的Bean信息,得到对应的Bea…

阿里云服务器租用价格分享,阿里云服务器热门配置最新活动价格汇总

在我们购买阿里云服务器的时候,1核2G、2核2G、2核4G、2核8G、4核8G、8核16G、8核32G等配置属于用户购买最多的热门配置,1核2G、2核2G、2核4G这些配置低一点的云服务器基本上能够满足绝大部分个人建站和普通企业用户建站需求,而4核8G、8核16G、…

Maven项目引入本地jar

Maven项目引入本地jar 1.对应maven模块项目中建lib目录,将jar放入进去 2.在对应的模块pom.xml中引入此依赖jar 3.在对应的maven-plugin插件打包的pom.xml中指定需要includeSystemScope为true的jar

AMEYA360:大唐恩智浦荣获 2023芯向亦庄 “汽车芯片50强”

2023年11月28日,由北京市科学技术委员会和北京市经济和信息化局指导、北京经济技术开发区管理委员会主办、盖世汽车协办的“芯向亦庄”汽车芯片大赛在北京亦庄成功闭幕。 在本次大赛中 大唐恩智浦的 电池管理芯片DNB1168 (应用于新能源汽车BMS系统) 凭卓越的性能及高…

【SpringBoot教程】SpringBoot 实现前后端分离的跨域访问(CORS)

作者简介:大家好,我是撸代码的羊驼,前阿里巴巴架构师,现某互联网公司CTO 联系v:sulny_ann(17362204968),加我进群,大家一起学习,一起进步,一起对抗…

【毕业季|进击的技术er】作为一名职场人,精心总结的嵌入式学习路线图

活动地址:毕业季进击的技术er 文章目录 0、作者介绍1、前言2、嵌入式基础必备知识2.1、学习内容2.2、学习建议2.3、学习资料 3、嵌入式入门篇——51单片机3.1、学习内容3.2、学习建议3.3、学习资料 4、STM32进阶篇4.1、学习内容4.2、学习建议4.3、学习资料 5、小而美…

嵌入式开发按怎样的路线学习较好?

嵌入式开发按怎样的路线学习较好? 在开始前我有一些资料,是我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了一份「嵌入式从专业入门到高级教程工具包」,点个关注,全部无偿共享给大家!&…

张驰咨询:掌握流程改进的关键,深入了解六西格玛绿带培训

尊敬的读者,当您寻求提升个人能力,加强企业流程管理时,六西格玛绿带培训无疑是您的不二选择。本文将带您深入了解六西格玛绿带培训的核心内容、必备工具和实际案例,以助您在职业生涯中一帆风顺。 六西格玛绿带培训主要针对中层管…

论文查重怎么找到需要更改的【详细说明】

大家好,今天来聊聊论文查重怎么找到需要更改的,希望能给大家提供一点参考。 以下是针对论文重复率高的情况,提供一些修改建议和技巧: 论文查重怎么找到需要更改的 论文查重是保证学术诚信和提高论文质量的重要环节小发猫伪原创。…

班级管理的重要性

班级管理,就像是一座桥,连接着学生和老师,它的重要性不言而喻。 营造良好的学习氛围 班级管理不仅仅是维护秩序,更是营造一个积极向上的学习氛围。一个好的班级管理,能让学生更加专注于学习,提高学习效率。…

Linux上的MAC地址欺骗

Linux上的MAC地址欺骗 1、查看mac地址法1:ifconfig法2:ip link show 2、临时性改变 MAC 地址法1:使用iproute2工具包法2:使用macchanger工具 3、永久性改变 MAC 地址3.1 在 Fedora、RHEL下实践3.2 在 Debian、Ubuntu、Linux Mint下…

数据结构之----原码、反码、补码

数据结构之----原码、反码、补码 什么是原码? 原码:我们将数字的二进制表示的最高位视为符号位,其中 0 表示正数,1 表示负数,其余位表示数字 的值。 什么是反码? 反码:正数的反码与其原码相…