(细节)My SQL中主键为0和主键自排约束的关系

wf-skylark 2018-05-18 原文

(细节)My SQL中主键为0和主键自排约束的关系

开始不设置主键

表的设计如下:

如果id的位置有好几个0的话:设置主键并且自动排序时,0会从1开始递增;

 

Insert 进去 id = 0的数据,数据会从实际的行数开始增加,和从0变化不一样;

 

现在主键是没有0的,如果把某个id改成0的话,0不会变!直接会进行排序;

 

insert一个id=0的看看,居然还是跟刚才一样直接跟行数相关!

 

再重置一下自动排序,看看这个0会不会有变化,

先取消自排;

再加上自排,果然跟想的一样,0要变成1了,错误提示说的是主键有重复的1所以不让自排,

 

修改之后,果真可以了,0变成1了,

 

       我觉得也就这几种情况吧,无符号的情况应该没什么区别,还有什么没有考虑的希望大家给我留言,可以告诉我你是怎么想的,我也很想知道,现在抛砖引玉我把我的总结和想法写一下:

  对我来说,0在数据库里很特殊。

  使用limit查看指定范围数据的时候这时候表就会是从0开始往下排的顺序,但是insert添加一行数据的时候反而是跟行数有关系,这时候又是按照从1开始往下排的顺序。如果使用主键自排约束以前表里有0,再设置完主键自排以后所有的0又不会根据行数,而是直接按照自上而下的顺序从1开始排。如果把表中的某个主键的数改成0,那直接就会进行排序放到正数前面,也就是说主键自排是允许有0存在的,那为什么本身存在的0要去修改成从1开始的递增序列呢?哪怕没加主键自排以前只有一个0,加了主键自排以后还是会变成1

  开始有0,增加主键自排约束,0依次变为1,2,3,4…….

  开始没0,增加主键自排约束,新添加的主键是0的行会根据行数自行变化,注意这里是新添加的行,使用的是insert

  开始没0,把某个主键的数修改成0,这个0会直接在排好序了再在表里显示出来。

说得简单一点就是,增加主键自排约束后:

   主键的值:修改成的0,可以存在,就是排个序。

        新添加的0,不允许存在,要根据行号改变。

        本身存在的0,不允许存在,要从1开始递增变化。

发表于 2018-05-18 01:56 汪凡 阅读() 评论() 编辑 收藏

 

版权声明:本文为wf-skylark原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/wf-skylark/p/9054191.html

(细节)My SQL中主键为0和主键自排约束的关系的更多相关文章

  1. SQL Server数据库代码指令简介

        这些是比较常用的命令操作,事先声明,这些命令是不区分大小写的,我按照我的课本来总结用法和知识点,无用的 […]...

  2. 一个值只有0和1的字段,到底要不要建索引?

    关于数据库索引的所有文章,都会告诉你不要对这种字段建索引。 但这些文章不会告诉你的一个事实是: 如果表里面这个 […]...

  3. Error during the installation of SQL Server 2008 R2

    在windows 2008 r2 en中安装sql server 2008 r2 cn出错 error: Ev […]...

  4. sql server 2008 NULL值

    SQL支持用NULL符号来表示缺少的值,它使用的是三值谓词逻辑,计算结果可是以TURE、FALSE或UNKNO […]...

  5. SQL datediff 计算时间差

    有关datediff的相应信息,见如下:   DATEDIFF (datepart ,startdate ,e […]...

  6. SQL Server中的事务日志管理(7/9):处理日志过度增长

    当一切正常时,没有必要特别留意什么是事务日志,它是如何工作的。你只要确保每个数据库都有正确的备份。当出现问题时 […]...

  7. SQL Server Management Studio 简单使用说明

    1.对数据库中的数据生成脚本  a.选中要生成脚本的数据库右键->任务->生成脚本(如下图)-&g […]...

  8. sql server 性能调优 I/O开销分析

    sql server 性能调优 I/O开销分析 一.概述   IO 内存是sql server最重要的资源,数 […]...

随机推荐

  1. 2000_narrowband to wideband conversion of speech using GMM based transformation

    论文地址:基于GMM的语音窄带到宽带转换 博客作者:凌逆战 博客地址:https://www.cnblogs. […]...

  2. 公众号送书活动正在火热进行

    文章原创于公众号:程序猿周先森。本平台不定时更新,喜欢我的文章,欢迎关注我的微信公众号。 活动要求: 每日公众 […]...

  3. 当谈论迭代器时,我谈些什么?

    花下猫语:之前说过,我对于编程语言跟其它学科的融合非常感兴趣,但我还说漏了一点,就是我对于 Python 跟其 […]...

  4. libreoffice转换文件为pdf文件乱码问题解决办法

    最近系统需要一个office文件预览功能 解决方案为使用libreoffice将office文件转换为pdf文 […]...

  5. 我的2020回顾——技术篇

    看着笔记里写了一半的「2019年总结」,总觉得莫名喜感,然后我又想说时间过得真快了,又到了每年写总结复盘的时候 […]...

  6. 电感的能量储存在哪里-史上最深度的解析(6)

    前面两节我们分别讨论了“电感的能量储存在磁芯里”与“电感的能量储存在气隙里”这两个观点,并且分别针对这两个观点 […]...

  7. CentOS7.7下二进制部署MySQL多版本多实例实战

    CentOS7.7下二进制部署MySQL多版本多实例实战 第一章 需求说明 部署MySQL5.7的三个多实例环 […]...

  8. 复旦大学高等代数在线课程2018–2019学年记录

    + 复旦大学高等代数在线课程2018–2019学年学习情况分析及文字评教信息   一、2018&# […]...

展开目录

目录导航