MySQL 主键详解

MySQL 主键详解先来看下我们正常的建表代码 CREATETABLEu t idint 11 NOTNULLAUTO INCREMENT user namevarchar 40 NOTNULL passwordvarc 255 NOTNULL ageint 4 NOTNULL PRIMARYKEY id ENGINE InnoDBAUTO INCRE

id int(11) NOT NULL AUTO_INCREMENT,

user_name varchar(40) NOT NULL,

password varchar(255) NOT NULL,

age int(4) NOT NULL,

PRIMARY KEY (id)

  1. 首先主键索引是唯一的,所以他确定了数据的唯一性,该字段不能重复。
    2.auto_increment 是递增的意思,每添加一条记录都会自动加 1 。
    3.一般我们的主键都会加上not null ,让主键不可为空,好比一个人如果没有身份证,是不合法的。
    4.至于unsinged这个属性我们细说下:
    UNSIGNED属性就是将数字类型无符号化,与C、C++这些程序语言中的unsigned含义相同。例如,INT的类型范围是-2 147 483 648 ~ 2 147 483 647, INT UNSIGNED的范围类型就是0 ~ 4 294 967 295。



在MYSQL中整型范围:

类型 大小 范围(有符号) 范围(无符号) 用途

TINYINT 1 字节 (-128,127) (0,255) 小整数值

SMALLINT 2 字节 (-32 768,32 767) (0,65 535) 大整数值

MEDIUMINT 3 字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值

INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232738.html原文链接:https://javaforall.net

(0)
上一篇 2025年9月18日 上午10:01
下一篇 2025年9月18日 上午10:22


相关推荐

  • ubuntu升级python版本

    ubuntu升级python版本Ubuntu16.04默认安装了Python2.7和3.5请注意,系统自带的python千万不能卸载!输入命令python按Ctrl+D退出python命令行输入命令sudoadd-apt-repositoryppa:jonathonf/python-3.6按Enter确认输入命令sudoapt-getupdate输入命令sudoapt-geti…

    2022年5月28日
    192
  • stm32f103c6t6引脚图_74ls163引脚图及功能表

    stm32f103c6t6引脚图_74ls163引脚图及功能表今天准备画一个STM32F103C8T6的最小系统板,就去STM32F103C8的数据手册查看了一下相应的引脚,因为数据手册里面的引脚表有中容量的多种封装描述,看上去比较麻烦,我就单独做了一个LQFP48脚的引脚表。方便后期自己画封装,就图看的省力一点哈。其部分图片如下所示:有需要的朋友可以从我的资源里去下,资源链接:STM32F103C8T6详细引脚表本人水平有限,上述信息仅供学习参考,如有错误和不妥之处,请多多指教。另外创作不易,请勿抄袭,如果有帮助到大家的话希望大家可以点个赞,谢谢~…

    2026年4月13日
    7
  • MAMP “403 Forbidden You don’t have permission to access / on this server.”

    MAMP “403 Forbidden You don’t have permission to access / on this server.”

    2021年10月19日
    45
  • 基于Spring MVC + Spring + MyBatis的【医院就诊挂号系统】[通俗易懂]

    基于Spring MVC + Spring + MyBatis的【医院就诊挂号系统】[通俗易懂]一、语言和环境1.实现语言:JAVA语言。2.环境要求:MyEclipse/Eclipse+Tomcat+MySQL。3.使用技术:SpringMVC+Spring+MyBatis或JSP+Servlet+JavaBean+JDBC。二、实现效果实现能够对患者姓名,医师类别、科室的模糊查询,用户点击核销以后状态变为已就诊。点击挂号实现基本信息的添加三、实现代码数据库:SETFOREIGN_KEY_CHECKS=0;———-

    2022年10月6日
    7
  • AutoIt3使用

    AutoIt3使用AutoIt 的大部分窗口函数都有窗口标题和文本参数 比如说下面的 WinWaitActiv 函数 这个函数的功能是使脚本暂停执行并一直等到指定窗口出现且激活为止 WinWaitActiv 窗口标题 窗口文本 超时时间 其中窗口标题是必须指定的参数 而窗口文本和超时时间都是可选参数 不过也有些函数的窗口文本参数是必须指定的 如果想省略这个

    2026年3月20日
    2
  • Spring Boot 项目最优雅的 HTTP 客户端工具,用它就够了,太香了!

    大家都知道okhttp是一款由square公司开源的java版本http客户端工具。实际上,square公司还开源了基于okhttp进一步封装的retrofit工具,用来支持通过接…

    2021年6月22日
    133

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号