MySQl int(1)、int(20) 的区别到底在哪里

news2024/9/18 13:03:37

MySQl int(1)、int(20) 的区别到底在哪里

在这里插入图片描述常思一二,便得自然…

int(1)数据类型介绍

在MySQL中,INT(1) 是一种定义整数类型的数据字段,其中的数字表示显示宽度而不是存储范围。具体说,INT(1) 中的数字 1 表示显示宽度,但并不影响存储范围或值的合法性。这可能会让人感到困惑,因为 INT 数据类型本身已经有一个特定的存储范围,而这里的 (1) 实际上并没有改变这个范围。

以下是对 INT(1) 的详细介绍:

  1. 数据类型: INT 是MySQL中的整数数据类型,表示整数值。它占据4个字节,可以存储从 -2^31 到 2^31-1 的整数(大约 -2.15 * 10^9 到 2.15 * 10^9)。

  2. 显示宽度 (Display Width): (1) 中的数字是显示宽度,用于指定显示的字符个数。对于整数类型,这通常用于控制显示的位数。在 INT(1) 中,这表示数字将以固定宽度显示,不足指定宽度的将使用零进行填充。但请注意,这仅是用于显示的,不影响实际存储或数值范围。

    例如,如果有一个 INT(1) 字段,存储了值 7,那么在检索时可能显示为 “7”,而不是 “007”。

  3. 对比: 使用显示宽度可能对排序和比较产生影响,但对于整数类型,它实际上并不改变值的范围或存储方式。在排序时,MySQL通常会忽略显示宽度。

总的来说,INT(1) 中的数字 1 表示显示宽度,但不改变存储范围。如果你希望限制整数的范围,应该使用适当范围的整数数据类型,而不是通过显示宽度来实现。

int(20)数据类型介绍

在MySQL中,INT(20) 是定义整数类型的数据字段,其中的数字 20 表示显示宽度(Display Width),但并不影响存储范围。与先前的例子 INT(1) 类似,INT(20) 中的数字并不改变整数的存储范围,而是用于控制显示的位数。

以下是对 INT(20) 的详细介绍:

  1. 数据类型: INT 是MySQL中的整数数据类型,占据4个字节,可以存储从 -2^31 到 2^31-1 的整数(大约 -2.15 * 10^9 到 2.15 * 10^9)。

  2. 显示宽度 (Display Width): (20) 中的数字是显示宽度,用于指定显示的字符个数。对于整数类型,这通常用于控制显示的位数。在 INT(20) 中,这表示数字将以固定宽度显示,不足指定宽度的将使用零进行填充。但请注意,这仅是用于显示的,不影响实际存储或数值范围。

    例如,如果有一个 INT(20) 字段,存储了值 123,那么在检索时可能显示为 “00000000000000000123”。

  3. 对比: 使用显示宽度可能对排序和比较产生影响,但对于整数类型,它实际上并不改变值的范围或存储方式。在排序时,MySQL通常会忽略显示宽度。

总的来说,INT(20) 中的数字 20 表示显示宽度,但不改变存储范围。如果你希望限制整数的范围,应该使用适当范围的整数数据类型,而不是通过显示宽度来实现。这样的显示宽度通常用于在结果集中对齐数字,而不是改变其实际存储。

总结概括

当在MySQL中定义整数字段时,使用 INT(1)INT(20) 中的数字部分(1和20)都是用于指定显示宽度,但不会改变实际存储范围。以下是对这两者的总结:

INT(1)
  1. 数据类型: INT 表示整数数据类型,占据4个字节,可以存储从 -2^31 到 2^31-1 的整数。

  2. 显示宽度 (Display Width): (1) 中的数字是显示宽度,用于指定显示的字符个数。不足指定宽度的将使用零进行填充。

  3. 影响:

    • 不改变存储范围。
    • 仅影响在结果集中的显示方式。
    • 可能在某些情况下用于对齐数字,但对于整数类型,通常没有实际影响。
INT(20)
  1. 数据类型: INT 表示整数数据类型,占据4个字节,可以存储从 -2^31 到 2^31-1 的整数。

  2. 显示宽度 (Display Width): (20) 中的数字是显示宽度,用于指定显示的字符个数。不足指定宽度的将使用零进行填充。

  3. 影响:

    • 不改变存储范围。
    • 仅影响在结果集中的显示方式。
    • 可能在某些情况下用于对齐数字,但对于整数类型,通常没有实际影响。
共同点:
  1. 存储范围: 无论显示宽度如何指定,INT 数据类型的存储范围都是相同的。

  2. 排序: 在排序时,MySQL通常会忽略显示宽度。

总体而言,这两者的主要作用是控制显示宽度,而不是改变整数的实际存储范围。选择使用显示宽度通常是为了在结果集中对齐数字,而不是为了更改底层数据类型的行为。

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

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

相关文章

VividTalk创新AI语音匹配图片技术:照片+语音=逼真说话视频!

VividTalk是一个由南京大学、阿里巴巴、字节跳动和南开大学共同开发的项目工具。它通过先进的音频到3D网格映射技术和网格到视频的转换技术,实现了高质量、逼真的音频驱动的说话头像视频生成。这一创新技术使得只需提供一张人物的静态照片和一段语音录音&#xff0c…

KeePass开源密码管理器

KeePass开源密码管理器 KeePass 是一款免费的开源密码管理器,KeePass 将密码存储为一个数据库,而这个数据库由一个主密码或密码文件锁住,也就是说我们只需要记住一个主密码,或使用一个密码文件,就可以解开这个数据库&a…

JavaSE基础50题:8. 获取一个数二进制序列中所有的偶数和奇数位,分别输出二进制序列。

概述 获取一个数二进制序列中所有的偶数和奇数位,分别输出二进制序列。 如:从右往左数 0111(如图) 偶数位:01 奇数位:11 代码 public static void main(String[] args) {Scanner scanner new Scanner(Sys…

动态规划学习——最长回文子序列,让字符串变成回文串的最小插入次数

一,最长回文串 1.题目 给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。 子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。 示例 1: 输入&…

Dockerfile详解#如何编写自己的Dockerfile

文章目录 前言编写规则指令详解FROM:基础镜像LABEL:镜像描述信息MAINTAINER:添加作者信息COPY:从宿主机复制文件到镜像中ADD:从宿主机复制文件到镜像中WORKDIR:设置工作目录 前言 Dockerfile是编写docker镜…

#HarmonyOS:装饰器UI描述---@Link

装饰器 装饰器(Decorator)是一种语法结构,用来在定义时修改类(class)的行为。 在语法上,装饰器有如下几个特征。 第一个是字符(或者说前缀)是,后面是一个表达式后面的…

机器学习算法(7)-朴素贝叶斯算法和K最近邻算法

一、说明 在在这篇文章中,我将解释两种机器学习算法,称为贝叶斯定理和 K 最近邻算法。贝叶斯定理以 18 世纪英国数学家托马斯贝叶斯的名字命名,是确定条件概率的数学公式。k 最近邻算法,也称为 KNN 或 k-NN,是一种非参…

Python基础知识-变量、数据类型(整型、浮点型、字符类型、布尔类型)详解

1、基本的输出和计算表达式: prinit(12-3) printf(12*3) printf(12/3) prinit(12-3) printf(12*3) printf(12/3) 形如12-3称为表达式 这个表达式的运算结果称为 表达式的返回值 1 2 3 这样的数字,叫做 字面值常量 - * /称为 运算符或者操作符 在C和j…

k8s中的Pod网络;Service网络;网络插件Calico

Pod网络;Service网络;网络插件Calico Pod网络 在K8S集群里,多个节点上的Pod相互通信,要通过网络插件来完成,比如Calico网络插件。 使用kubeadm初始化K8S集群时,有指定一个参数–pod-network-cidr10.18.0…

再识二叉树

1. 二叉树的存储 二叉树的存储结构分为:顺序存储和类似于链表的链式存储。 其中二叉树的链式存储是通过一个一个的节点引用起来的,常见的表示方式有二叉和三叉表示方式(这里本主主要讲的是链式存储),具体代码如下&…

2个月拿下信息系统项目管理师攻略(攻略超级全)

信息系统项目管理师(高项)一次性过啦!结合这次备考经验,给大家总结一下复习方法。 先上图,开心一下! 一、我为什么选择了高项 为什么我会选信息系统项目管理师,也就是我们常说的高项。 原因1…

bpftrace原理与使用方法

Bpftrace 概念和原理bpftrace安装bpftrace 语法结构bpftrace 变量内置变量自定义变量Map变量 内置函数Bpftrace操作案例文件系统磁盘进程内存 bpftrace是一种基于eBPF(Extended Berkeley Packet Filter)的跟踪工具,用于在Linux系统中进行动态…

PostGIS学习教程十一:投影数据

PostGIS学习教程十一:投影数据 地球不是平的,也没有简单的方法把它放在一张平面纸地图上(或电脑屏幕上),所以人们想出了各种巧妙的解决方案(投影)。 每种投影方案都有优点和缺点,一…

有了安卓模拟器,就能在Windows 10或11上像使用安卓操作系统一样使用安卓

你可以使用Android模拟器在Windows 11或Windows 10中运行Android应用程序。如果你喜欢的应用程序只在手机上运行,但你想在电脑上使用,这些模拟器会很有用。 BlueStacks 与整个操作系统模拟器不同,BlueStacks只在Windows上模拟Android应用程序。它真的很容易使用,所以你不需…

鸿蒙OS应用开发的开发环境

鸿蒙OS应用开发的开发环境 鸿蒙系统发展越来越快,已经开始走进千家万户,从手机到电视机,再到汽车,以后各种手表、智能设备等等。这已经是一个广泛应用的操作系统,也是跟大家生活密切相关的操作系统。要想在这个平台上…

人脸识别安卓主板_MTK方案智能闸机门禁工业安卓主板定制开发

人脸识别主板广泛应用于各个领域,包括人脸支付系统、人脸识别监控系统、写字楼办公楼门禁闸机、校园、地铁、住宅门禁、考勤机、智能门锁、广告机、售卖机等。 主板基于联发科MTK方案,并由行业PCBA和MTK的核心板组成。根据产品需求,可以选择…

SpringBoot3.x代码生成器构建的三层架构主启动类报错

【场景复现】 jdk21环境变量springboot3.x、mybatisplus generator3.5.3构建工程启动: 【原因分析】 显示 factoryBeanObjectType 属性的值类型不正确,应该是一个实现了 FactoryBean 接口的类的全限定名。 注解注入每层对象,找不到Factory…

嵌入式系统

嵌入式系统 目前国内一个普遍认同的嵌入式系统定义是:以应用为中心、以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。(引用自《嵌入式系统设计师教程》) …

node后端接口无法插入数据为emoji的表情的问题

原因 emoji的表情一般是这样的\xF0\x9F\x98\x80或者是\xF0\x9F\x98 ,事实上 一般数据库的utf8的编码类型都是能保存\xF0\x9F\x98 但是不能保存\xF0\x9F\x98\x80这种样的emoji,要将数据库编码格式为utf8mb4 也就是utf8的超集 另外,除了 数据库…

论文精读 MOG2 阴影检测

An Improved Adaptive Background Mixture Model for Real-time Tracking with Shadow Detection 一种用于阴影检测实时跟踪的改进自适应背景混合模型 承接上一篇博客:论文精读 && MOG && 埃里克格里姆森-CSDN博客 目录 一、摘要 二、结论 三…