范围

int:从 -2^31 (-2147483648) 到 2^31-1 (2147483647) 的整型数据。

bigint:从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据。

准备三张表,以200w条数据为基础,除了id的类型外其他都一样。

table1:主键为 int 类型

table2:主键为 bigint 类型

table3:主键为 varchar 类型

在执行相同的操作后得出以下结论:

  • 查询速度不同,int > bigint > varchar
  • 占用磁盘空间不同,int 存储大小为  4 个字节;bigint 存储大小为 8 个字节。 int < bigint < varchar
  • 如果主键值大于字段类型的范围时,MySQL 会报错:out of range value for column ‘id‘ at row 1。如:在 int 类型的字段中存储超过 10 位的值时,就会提示上边的错误。
  • 不同的字段类型存储数据容量也个不相同
  • 若系统是数字型,在导入时,为了区分新老数据,可能想在老数据主键前统一加一个字符标识(例如“o”,old)来表示这是老数据,那么数字型主键面临一个挑战

MySQL主键类型使用int、bigint、varchar区别相关推荐

  1. Oracle与Mysql主键、索引及分页的区别小结

    Oracle与Mysql主键.索引及分页的区别,学习oracle的朋友可以参考下 区别: 1.主键,Oracle不可以实现自增,mysql可以实现自增. oracle新建序列,SEQ_USER_Id. ...

  2. mysql 主键类型_MySQL 主键类型的考量

    作为一个微服务的开发者, 通常都要自己来负责数据库表的创建.一个常见的问题是, 如何定义主键的类型? 通常我们会有两种做法. 1)主键选长整型, 并且自增的. 2)主键选择UUID类型.对于Mysql ...

  3. MySQL主键与索引的联系和区别

    关系数据库依赖于主键,它是数据库物理模式的基石.主键在物理层上只有两个前途: 唯一地标识一行 作为一个可以被外键有效引用的对象 索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分) ...

  4. MySQL主键学习总结

    浅谈MySQL主键 主键没有着明确的概念定义,其是索引的一种,并且是唯一性索引的一种,且必须定义为"PRIMARY KEY",主键不能重复,一个表只能有一个主键. 1.声明主键的方 ...

  5. mysql主键long_MySQL主键设计

    [TOC] 在项目过程中遇到一个看似极为基础的问题,但是在深入思考后还是引出了不少问题,觉得有必要把这一学习过程进行记录. MySQL主键设计原则 MySQL主键应当是对用户没有意义的. MySQL主 ...

  6. 从开发者角度谈Mysql主键

    转载自 从开发者角度谈Mysql主键 说在前面 零度mysql一直比较薄弱,俗话说的好,不会mysql的程序员不是好程序员,刚刚好认识mysql大牛刘龘刘,刚刚好就有了这些文章,主要是刘龘刘大牛写的, ...

  7. MySQL主键和外键使用及说明

    MySQL主键和外键使用及说明 一.外键约束 MySQL通过外键约束来保证表与表之间的数据的完整性和准确性. 外键的使用条件:  1.两个表必须是InnoDB表,MyISAM表暂时不支持外键(据说以后 ...

  8. mysql 主键溢出检查_详解MySQL 表中非主键列溢出情况监控

    今天,又掉坑了. 之前踩到过MySQL主键溢出的情况,通过prometheus监控起来了. 这次遇到的坑,更加的隐蔽. 是一个log表里面的一个int signed类型的列写满了.快速的解决方法当然还 ...

  9. Mysql主键与事务

    一.数据库主键 (一).主键及自增 每一张表通常会有一个且只有一个主键,来表示每条数据的唯一性 特点:1.值不能重复 2.非空  创建主键约束表  格式:create table 表名称 (字段1 i ...

最新文章

  1. 18.self关键字.rs
  2. 百度地图 开发 乡镇级区域显示_Tableau导入乡镇级地图进行数据展示
  3. js 运算符_JS的相等和严格相等运算符(== amp; ===)
  4. React AntD 表格查看修改时默认选中几行数据
  5. RHadoop和CDH整合实例(三)- RHive
  6. mysql 将时间戳_mysql 将时间戳直接转换成日期时间
  7. linux-安装-MySQL
  8. 图例 | Java混合模式分析之火焰图实例
  9. SQL SERVER 用户自定义函数如何定义.
  10. rabbitmq视频教程,面试官:
  11. 李守红java_SpringMVC基础及应用-李守红
  12. google play以及google pay
  13. 操作系统——PV操作
  14. ESP32+PIO+LGVL+gui_guider
  15. 通过批处理文件bat批量修改图片名称
  16. 解决Xposed不联网问题,附带Xposed安装教程雷电夜神逍遥模拟器
  17. 扯淡 | 如何判断一家公司是否靠谱
  18. 国外安全网站、社区论坛、博客、公司、在线工具等整合收集
  19. BIN,S19,M0T,SREC,HEX文件解析;FileParse(一)之文件详解
  20. 修改Ubuntu启动项

热门文章

  1. c4d python sdk_C4D脚本自动接口完成脚本 Python Cinema 4D API auto completion (fake package)
  2. HTML转PDF思路
  3. 【转载】常见的C++数学计算库
  4. OMG~~~真的变形金刚来啦!!!!
  5. 字符串函数以及内存函数概述
  6. win10 + Qt5.14.0(mingw73_64) 下的 OpenCV4.5.1源码编译 注意事项
  7. QtCreator开启宏录制
  8. 易语言大漠一键登录游戏框架思路步骤
  9. 滴滴打车:天价补贴背后的惊人秘密
  10. Simulink代码生成——多速率任务调度