色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

mysql修改自增主鍵數(shù)值無效的問題及解決

瀏覽:2日期:2023-06-08 19:37:37
目錄mysql修改自增主鍵數(shù)值無效mysql自增主鍵重復(fù)問題的可能自增字段的定義和題外話自增字段重復(fù)問題總結(jié)mysql修改自增主鍵數(shù)值無效

假如你的數(shù)據(jù)表中的數(shù)據(jù)如下圖所示:

把自增主鍵的數(shù)值(AUTO_INCREMENT)設(shè)置為小于等于100的值(以數(shù)值50舉例),我們可以看到mysql顯示修改成功

此時(shí)再次添加數(shù)據(jù)并查詢所有數(shù)據(jù),發(fā)現(xiàn)主鍵id居然依舊從100開始繼續(xù)增長

查詢AUTO_INCRMENT數(shù)值發(fā)現(xiàn)數(shù)值為null

因?yàn)楸碇写嬖诒饶阋薷腁UTO_INCREMENT值大的主鍵id,導(dǎo)致無法把AUTO_INCREMENT修改為50,而且不會(huì)有任何報(bào)錯(cuò),所以不要把AUTO_INCREMENT修改為小于 最大主鍵id 的值

mysql自增主鍵重復(fù)問題的可能

MySQL支持?jǐn)?shù)據(jù)字段自增,可以用來作為數(shù)據(jù)表的主鍵字段。

自增字段的定義和題外話

看一個(gè)數(shù)據(jù)表的創(chuàng)建實(shí)例:

DROP TABLE IF EXISTS `spgl_dfxmsplcxxb`;CREATE TABLE `spgl_dfxmsplcxxb` (? `LSH` int(11) NOT NULL AUTO_INCREMENT COMMENT '流水號(hào)',? `DFSJZJ` varchar(50) NOT NULL COMMENT '地方數(shù)據(jù)主鍵',? `XZQHDM` varchar(6) NOT NULL COMMENT '行政區(qū)劃代碼',? `SPLCBM` varchar(100) NOT NULL COMMENT '審批流程編碼',? `SPLCMC` varchar(200) NOT NULL COMMENT '審批流程名稱',? `SPLCBBH` double(4,1) NOT NULL COMMENT '審批流程版本號(hào)',? `SPLCSXSJ` datetime NOT NULL COMMENT '審批流程生效時(shí)間',? `SPLCLX` int(11) NOT NULL COMMENT '審批流程類型',? `SPLCSM` varchar(2000) DEFAULT NULL COMMENT 'SPLCSM',? `FJMC` varchar(512) NOT NULL COMMENT '附件名稱',? `FJLX` varchar(64) NOT NULL COMMENT '附件類型',? `FJID` varchar(100) NOT NULL COMMENT '附件ID',? `SJYXBS` int(11) NOT NULL COMMENT '數(shù)據(jù)有效標(biāo)識(shí)',? `SJWXYY` varchar(200) DEFAULT NULL COMMENT '數(shù)據(jù)無效原因',? `SJSCZT` int(11) NOT NULL COMMENT '數(shù)據(jù)上傳狀態(tài)',? `SBYY` varchar(1000) DEFAULT NULL COMMENT '失敗原因',? PRIMARY KEY (`LSH`),? KEY `unique_main` (`XZQHDM`,`SPLCBM`,`SPLCBBH`) USING BTREE) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb4 COMMENT='表1:地方項(xiàng)目審批流程信息表';

該表將LSH字段設(shè)置為自增主鍵,并默認(rèn)auto_increment_increment=1、auto_increment_offset=1。

對(duì)該表執(zhí)行show create table spgl_dfxmsplcxxb可以得到如下信息:

CREATE TABLE `spgl_dfxmsplcjdxxb` (? `LSH` int(11) NOT NULL AUTO_INCREMENT COMMENT '流水號(hào)',? `DFSJZJ` varchar(50) NOT NULL COMMENT '地方數(shù)據(jù)主鍵',? `XZQHDM` varchar(6) NOT NULL COMMENT '行政區(qū)劃代碼',? `SPLCBM` varchar(100) NOT NULL COMMENT '審批流程編碼',? `SPLCBBH` double(4,1) NOT NULL COMMENT '審批流程版本號(hào)',? `SPJDBM` varchar(100) DEFAULT NULL COMMENT '審批階段編碼',? `SPJDMC` varchar(200) NOT NULL COMMENT '審批階段名稱',? `SPJDXH` int(11) NOT NULL COMMENT '審批階段序號(hào)',? `DYBZSPJDXH` varchar(200) NOT NULL COMMENT '對(duì)應(yīng)標(biāo)準(zhǔn)審批階段序號(hào)',? `SPJDSX` int(11) NOT NULL COMMENT '審批階段時(shí)限',? `LCBSXLX` int(11) NOT NULL COMMENT '里程碑事項(xiàng)類型',? `SJYXBS` int(11) NOT NULL COMMENT '數(shù)據(jù)有效標(biāo)識(shí)',? `SJWXYY` varchar(200) DEFAULT NULL COMMENT '數(shù)據(jù)無效原因',? `SJSCZT` int(11) NOT NULL COMMENT '數(shù)據(jù)上傳狀態(tài)',? `SBYY` varchar(1000) DEFAULT NULL COMMENT '失敗原因',? PRIMARY KEY (`LSH`),? KEY `unique_main` (`XZQHDM`,`SPLCBM`,`SPLCBBH`,`SPJDXH`) USING BTREE) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='表2:地方項(xiàng)目審批流程階段信息表'自增字段重復(fù)問題

對(duì)于表的記錄間互相拷貝問題很容易造成自增字段的重復(fù)。

例如在我經(jīng)歷的一次項(xiàng)目:本地?cái)?shù)據(jù)庫和前置數(shù)據(jù)庫進(jìn)行數(shù)據(jù)同步時(shí),本地庫向前置庫上傳數(shù)據(jù),前置庫插入傳來的數(shù)據(jù)并返回自增字段流水號(hào)更本地庫。同步每3分種依據(jù)標(biāo)志位檢查執(zhí)行一次。

這樣,如果對(duì)本地庫數(shù)據(jù)進(jìn)行多次修改,那么就需要向前置庫多次上傳該條記錄(或該條記錄的拷貝記錄)。

如果沒有在上傳前手動(dòng)將前置庫返回的流水號(hào)置為空,那么前置庫將會(huì)用這個(gè)已有的流水號(hào)作為主鍵插入新數(shù)據(jù)(而不是重新生成新的流水號(hào)),從而導(dǎo)致主鍵重復(fù)的錯(cuò)誤。

所以,在處理含有自增字段的表格時(shí),如果自增字段和其他表格有數(shù)據(jù)上的關(guān)聯(lián),應(yīng)當(dāng)注意這種操作會(huì)不會(huì)導(dǎo)致自增字段的沖突。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: MySQL 數(shù)據(jù)庫
主站蜘蛛池模板: 国产精品99精品久久免费 | 国产精品高清免费网站 | 久久精品7 | 欧美一级特黄特色大片免费 | 欧美 日韩 国产在线 | 精品国产91在线网 | 国产精品视频男人的天堂 | 狠狠色综合久久婷婷 | 国产欧美一区二区三区在线看 | 成年视频在线 | 欧美极品在线播放 | 天天爽夜夜操 | 日韩一级一欧美一级国产 | 亚洲欧美一区二区三区在饯 | 男人的天堂免费视频 | 久久精品久久精品国产大片 | 国产亚洲精品一区二区久久 | 午夜欧美在线 | 一级在线免费视频 | 亚洲一区日韩一区欧美一区a | 不卡一区在线观看 | 国产一区二区日韩欧美在线 | 91视频最新网站 | 亚洲第一免费播放区 | 日本一级特黄a大片在线 | 成年午夜性爽快免费视频不卡 | 亚洲精品国自产拍在线观看 | 成人性动漫高清免费观看网址 | 日韩综合色| 国产精品无码久久av | 欧美自拍另类 | 亚洲国内| 国产一区二区在线 |播放 | 日韩国产中文字幕 | 亚洲国产精品成人午夜在线观看 | 黄色网址www | 久久在线视频 | 黄色一级毛片网站 | 国产欧美日韩精品一区二区三区 | 在线成人a毛片免费播放 | 久久99精品久久只有精品 |