mysql中的int(10)int(20)分别代表什么意思

作者:Android_la 时间:2024-01-20 21:31:30 

int(10)int(20)分别代表什么意思

储备知识

在设计数据库表的时候,经常需要设计一个id字段,它的类型一般都是整型int,经常会遇到int(10)、int(20)等等,那么括号中的内容代表什么意思呢?

int的范围

  • 有符号的整型范围是-2147483648~2147483647

  • 无符号的整型范围是0~4294967295

int(10)的意思

int(10)的意思是假设有一个变量名为id,它的能显示的宽度能显示10位。在使用id时,假如我给id输入10,那么mysql会默认给你存储0000000010。当你输入的数据不足10位时,会自动帮你补全位数。假如我设计的id字段是int(20),那么我在给id输入10时,mysql会自动补全18个0,补到20位为止。

心得

int(M)的作用于int的范围明显是无关的,int(M)只是用来显示数据的宽度,我们能看到的宽度。

当字段被设计为int类型,那么它的范围就已经被写死了(看上面的1.1节的内容),与M无关。

int(10),char(10),varchar(10)的区别

1.含义

1.首先int(10)的10表示显示的数据的长度,不是存储数据的大小;

2.而chart(10)和varchar(10)的10表示存储数据的大小,即表示存储多少个字符。

2.长度

char(10) 10位固定字符串,不足补空格 最多10个字符

varchar(10) 10位可变字符串,不补空格 最多10个字符

char(10)和varchar(10) 也是有区别的,char(10)表示存储定长的10个字符,不足10个就用空格补齐,占用更多的存储空间。

而varchar(10)表示存储10个变长的字符,存储多少个就是多少个,空格也按一个字符存储这一点是和char(10)的空格不同的,char(10)的空格表示占位不算一个字符。

3.速度

char的存取数度还是要比varchar要快得多,因为其长度固定,方便程序的存储与查找;但是char也为此付出的是空间的代价,因为其长度固定,所以难免会有多余的空格占位符占据空间,可谓是以空间换取时间效率,而varchar是以空间效率为首位的。

4.存储方式

1.char的存储方式是,对英文字符(ASCII)占用1个字节,对一个汉字占用两个字节;

2.而varchar的存储方式是,对每个英文字符占用2个字节,汉字也占用2个字节,两者的存储数据都非unicode的字符数据。

来源:https://blog.csdn.net/qq_40634846/article/details/101837838

标签:mysql,int(10),int(20)
0
投稿

猜你喜欢

  • 09七夕节各大搜索引擎LOGO欣赏

    2009-08-27 15:34:00
  • python删除文件、清空目录的实现方法

    2021-06-02 02:53:06
  • 四种方法在SQL Server数据库中成批导入数据

    2009-02-19 17:25:00
  • js和jquery判断数据类型的4种方法总结

    2023-08-25 08:49:18
  • linux下mysql链接被防火墙阻止的解决方法

    2024-01-16 17:31:27
  • Python Pandas常用函数方法总结

    2022-11-19 05:18:31
  • PHP xpath提取网页数据内容代码解析

    2024-06-05 15:39:35
  • 微信小程序左滑删除功能开发案例详解

    2024-04-28 09:37:21
  • linux 部署apache服务的步骤

    2022-11-28 02:59:16
  • 解决MySQL安装重装时出现could not start the service mysql error:0问题的方法

    2024-01-23 01:17:00
  • 解决Vue axios post请求,后台获取不到数据的问题方法

    2024-05-09 09:38:38
  • Python通过DOM和SAX方式解析XML的应用实例分享

    2023-10-15 10:46:32
  • Python随机数用法实例详解【基于random模块】

    2023-10-26 08:48:49
  • MySQL 原理与优化之Update 优化

    2024-01-17 03:03:35
  • python实现随机漫步算法

    2022-07-23 19:08:05
  • 利用Axure封装视觉标准

    2008-10-21 10:42:00
  • python实现双向链表原理

    2023-08-11 11:42:11
  • Python使用matplotlib填充图形指定区域代码示例

    2022-10-16 10:30:12
  • python破解WiFi教程代码,Python蹭网原理讲解

    2022-09-05 20:14:43
  • Python中的面向对象编程详解(上)

    2021-10-12 14:33:45
  • asp之家 网络编程 m.aspxhome.com