【MySQL--->数据类型】

文章目录

    • @[TOC](文章目录)
  • 一、数据类型分类
  • 二、整型类型
  • 三、bit(位)类型
  • 四、float类型
  • 五、decimal类型
  • 六、char和varchar类型
    • 1.char类型
    • 2.varchar
    • 3.char与varchar的区别
  • 七、日期与时间类型
  • 八、enum和set

一、数据类型分类

在这里插入图片描述
在这里插入图片描述

二、整型类型

在这里插入图片描述

数值类型有数据存储上限,而且每个类型都有无符号和有符号两种,默认有符号,在类型后面加上unsigned就是无符号,以tinyint为例,总共占一个字节,无符号最大存储上限是127,下限-128,有符号最大上限是255,下限是0.
mysql数值类型不会发生数据截断的情况,如果发生越界的情况只会报错,不会数据截断存储.这样能保证数据库中数据的合法性.不同数值类型所占的字节大小不同,视情况选择适当的类型,不能太大也不能太小.

三、bit(位)类型

bit类型就是按比特位存储数据的,类型后面跟(n)可以设置比特位的个数,比特位最大上限是64位,如果类型设置为bit(1),数值只能插入0或者1.,数值的显示是以ascll码值的方式显示的,也是按照ascll码值的方式 存储的.比如存储0或者1是显示不出来的,但是如果是字符的话就可以显示,比如’a’或者97都是显示’a’.
在这里插入图片描述

四、float类型

类型指定格式float(m,d)m代表数据总长度,d代表精度.占4个字节,float unsigned为无符号类型.
float类型后面的小数值如果超出精度会被四舍五入,但是前提是四舍五入以后数据总长度必须不能超过m.
例如float(4.2),无符号上限99.99,下限-99.99,有符号上限99.99.下限是0;
在这里插入图片描述
如果整数部分存储的值超过99,会有精度损失
在这里插入图片描述

五、decimal类型

decimal(m, d) [unsigned] : 定点数m指定长度,d表示小数点的位数
decimal类型与float的精度不同float表示的精度大约是7位。decimal整数最大位数m为65。支持小数最大位数d是30。如果d被省略,默认为0.如果m被省略,默认是10。

六、char和varchar类型

1.char类型

char(L): 固定长度字符串,L是可以存储的长度,单位为字符,最大长度值可以为255
char(2) 表示可以存放两个字符,可以是字母或汉字,但是不能超过2个, 最多只能是255

2.varchar

varchar(L): 可变长度字符串,L表示字符长度,最大长度65535个字节,

除了有效数据,还需要腾出最大3个最小1个字节用作字符串长度记录.utf8编码格式汉字占3个字节,gbk编码格式汉字占2个字符,也就是说utf8编码格式下varchar最多可以存储(65535-(1-3))/3个汉字,gbk编码最多可以存储(65535-(1-3))/2个汉字

如果一行只有一个varchar类型,那么上限确实是utf8编码格式下varchar最多可以存储(65535-(1-3))/3个汉字,gbk编码最多可以存储(65535-(1-3))/2个汉字,也就是说这不但是类型的上限也是一个表的一行的上限.

3.char与varchar的区别

char是固定长度的,如果char(4),那么不管存储的数据有没有4字节,都需要4字节的空间,varchar(4)如果存储的实际数据是1字节,那么还需要1字节存储字符串长度,所以实际占空间2字节.

应用场景,如果所需的数据是多变的,那么应该使用varchar类型,如果担心长度不够用,可以将L定义的长一些.如果是固定长度的,那么应该使用char,应为char不需要多余字节维护长度.

七、日期与时间类型

date :日期 ‘yyyy-mm-dd’ ,占用3字节
datetime 时间日期格式 ‘yyyy-mm-dd HH:ii:ss’ 表示范围从 1000 到 9999 ,占用8字节
timestamp :时间戳,从1970年开始的 yyyy-mm-dd HH:ii:ss 格式和 datetime 完全一致,占用4字节
如果更新数据,更新数据,timestamp类型时间戳会自动更新;在这里插入图片描述

八、enum和set

语法:
enum:枚举,“单选”类型;
enum(‘选项1’,‘选项2’,‘选项3’,…);
该设定只是提供了若干个选项的值,最终一个单元格中,实际只存储了其中一个值;而且出于效率考虑,这些值实际存储的是“数字”,因为这些选项的每个选项值依次对应如下数字:1,2,3,…最多65535个;当我们添加枚举值时,也可以添加对应的数字编号。
set:集合,“多选”类型;
set(‘选项值1’,‘选项值2’,‘选项值3’, …);
该设定只是提供了若干个选项的值,最终一个单元格中,设计可存储了其中任意多个值;而且出于效率考虑,这些值实际存储的是“数字”,因为这些选项的每个选项值依次对应如下数字:1,2,4,8,16,32,…最多64个
在这里插入图片描述


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

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

相关文章

C语言暑假刷题冲刺篇——day1

目录 一、选择题 二、编程题 🎈个人主页:库库的里昂 🎐CSDN新晋作者 🎉欢迎 👍点赞✍评论⭐收藏✨收录专栏:C语言每日一练 ✨其他专栏:代码小游戏C语言初阶🤝希望作者的文章能对你…

【计算机视觉|生成对抗】改进的生成对抗网络(GANs)训练技术

本系列博文为深度学习/计算机视觉论文笔记,转载请注明出处 标题:Improved Techniques for Training GANs 链接:[1606.03498v1] Improved Techniques for Training GANs (arxiv.org) 摘要 本文介绍了一系列应用于生成对抗网络(G…

数据可视化工具的三大类报表制作流程分享

电脑(pc)、移动、大屏三大类型的BI数据可视化报表制作步骤基本相同,差别就在于尺寸调整和具体的报表布局。这对于采用点击、拖拉拽方式来制作报表的奥威BI数据可视化工具来说就显得特别简单。接下来,我们就一起看看不这三大类型的…

ES中倒排索引机制

在ES的倒排索引机制中有四个重要的名词:Term、Term Dictionary、Term Index、Posting List。 Term(词条):词条是索引里面最小的存储和查询单元。一段文本经过分析器分析以后就会输出一串词条。一般来说英文语境中词条是一个单词&a…

wps设置一键标题字体和大小

参考 wps设置一键标题字体和大小:https://www.kafan.cn/A/7v5le1op3g.html 统一一键设置

数据结构:力扣刷题

题一:删除有序数组中的重复项 给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。 考虑 nums 的…

Intel汇编和ATT汇编的区别?

一、前缀不同 在 Intel 语法中,没有寄存器前缀或立即前缀。 然而,在 AT&T 中,寄存器的前缀是“%”,而 immed 的前缀是“$”。 Intel 语法十六进制或二进制即时数据分别带有“h”和“b”后缀。 此外,如果第一个十六…

14k字综述视觉大模型

目录 0.导读1.背景介绍1.1基础架构1.2目标函数1.2.1对比式学习1.2.2生成式学习1.3预训练1.3.1预训练数据集1.3.2微调1.3.3提示工程2.基于文本提示的基础模型2.1基于对比学习的方法2.1.1基于通用模型的对比方法2.1.2基于视觉定位基础模型的方法2.2基于生成式的方法2.3基于对比学…

安全加密框架图——Oracle安全开发者

Oracle安全开发者 ACLs 设计 ACLs(访问控制列表)时,可以根据以下思路进行设计: 所有者文件权限:确定文件的所有者能够对文件执行哪些操作,如读取、写入、执行等。这可以根据文件的性质和拥有者的职责来决…

Destination Host Unreachable

背景:物理机的IP地址是192.168.31.189,虚拟机的IP地址是192.168.194.130 物理机ping得通虚拟机 虚拟机ping得通外网 可是虚拟机ping不通物理机 1、报错信息 Destination Host Unreachable 2、原因 用route -n命令查看路由表发现192.168.194.0没有走网…

opencv+ffmpeg+QOpenGLWidget开发的音视频播放器demo

前言 本篇文档的demo包含了 1.使用OpenCV对图像进行处理,对图像进行置灰,旋转,抠图,高斯模糊,中值滤波,部分区域清除置黑,背景移除,边缘检测等操作;2.单纯使用opencv播放…

基于深度信念神经网络+长短期神经网络的降雨量预测,基于dbn-lstm的降雨量预测,dbn原理,lstm原理

目录 背影 DBN神经网络的原理 DBN神经网络的定义 受限玻尔兹曼机(RBM) LSTM原理 DBN-LSTM的降雨量预测 基本结构 主要参数 数据 MATALB代码 结果图 展望 背影 DBN是一种深度学习神经网络,拥有提取特征,非监督学习的能力,通过dbn进行无监督学习提取特征,然后长短期神经…

Android Studio实现图形验证码

源代码 源代码MainActivity 效果图32行需要修改,不修改会报错:需要常量表达式,我的代码已修改 点击后 MainActivity import static com.example.graphicverificationcode.RxCaptcha.TYPE.NUMBER;import android.annotation.SuppressLint; …

c++ 学习系列 -- 智能指针

一 为什么引入智能指针?解决了什么问题? C 程序设计中使用堆内存是非常频繁的操作,堆内存的申请和释放都由程序员自己管理。但使用普通指针,容易造成内存泄露(忘记释放)、二次释放、程序发生异常时内存泄…

Failed to execute goal org.apache.maven.plugins

原因: 这个文件D:\java\maven\com\ruoyi\pg-student\maven-metadata-local.xml出了问题 解决: 最简单的直接删除D:\java\maven\com\ruoyi\pg-student\maven-metadata-local.xml重新打包 或者把D:\java\maven\com\ruoyi\pg-student这个目录下所有文件…

汇编指令练习

1.大小比较(循环) start: /*mov r0,#0x9mov r1,#0xfb LoopLoop:cmp r0,r1beq stopsubhi r0,r0,r1subcc r1,r1,r0b Loop stop:b stop.end 仿真图 2. 1到100之和 start:mov r0,#0x1mov r1,#0x0b sum sum:add r1,r1,r0add r0,r0,#0x1cmp r0,#0x65beq sto…

记录每日LeetCode 617.合并二叉树 Java实现

题目描述: 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。你需要将这两棵树合并成一棵新二叉树。合并的规则是:…

Handler详解

跟Handler有关系的,包括Thread,Looper,Handler,MessageQueue Looper: 由于Looper是android包加入的类,而Thread是java包的类,所以,想要为Thread创建一个Looper,需要在线程内部调用…

iOS字体像素与磅的对应关系

注意:低于iOS10的系统,显示的字宽和字高比高于iOS10的系统小。 这就是iOS10系统发布时,很多app显示的内容后面出现…,因而出现很多app为了适配iOS10系统而重新发布新版本。 用PS设计的iOS效果图中,字体是以像素&#x…

添加vue devtools扩展工具+添加后F12不显示Vue图标

前言:在开启Vue学习之旅时,遇到问题两个问题,第一添加不上vue devtools扩展工具,第二添加完成后,F12不显示Vue图标。查阅了很多博客,自己解决了问题,故写此博客记录。如果你遇到和我一样的问题&…