最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql如何變更自增主鍵id起始值

 更新時間:2024年08月05日 17:06:47   作者:Java-Talk  
這篇文章主要介紹了mysql如何變更自增主鍵id起始值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

mysql變更自增主鍵id起始值

account 庫 user 表結(jié)構(gòu)

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `name` varchar(50) NOT NULL COMMENT '用戶名',
  `age` int(11) NOT NULL COMMENT '年齡',
  `create_datetime` datetime NOT NULL COMMENT '創(chuàng)建時間',
  `update_datetime` datetime NOT NULL COMMENT '更新時間',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8

獲取自增id字段的下一個值

方法一:

SELECT auto_increment FROM information_schema.tables where table_schema="account" and table_name="user";

得到如下結(jié)果:

方法二:

SHOW table STATUS like 'user'

修改自增id字段的初始值

alter table user AUTO_INCREMENT=500

其他 SQL 說明

  • 1 select last_insert_id() from user

在使用 Insert 語句后,緊接著使用 select last_insert_id() 才有效,在沒有使用過 Insert 語句的情況下,查詢返回的結(jié)果為0。

  • 2 select max(id) from user

如果手動刪除了最新的數(shù)據(jù),使用 max(id)查詢的結(jié)果是當(dāng)前剩下數(shù)據(jù)中最大的記錄,而新插入數(shù)據(jù)則不一定從這個數(shù)字開始計數(shù)。

mysql設(shè)置主鍵自動增長起始值

實現(xiàn)目標

mysql下將自增主鍵的值,從10000開始,即實現(xiàn)自增主鍵的種子為10000。

方案1)

使用alter table `tablename` AUTO_INCREMENT=10000

創(chuàng)建自增主鍵之后,使用alter table `tablename` AUTO_INCREMENT=10000實現(xiàn)修改表起始值。

drop table if exists `trace_test`;

CREATE TABLE `trace_test` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;

alter table `trace_test` AUTO_INCREMENT=10000;

insert into `trace_test`(`name`)values('name2');
select * from `trace_test`;
Result:

id     name
10000  name2

方案2)

創(chuàng)建表時設(shè)置AUTO_INCREMENT 10000參數(shù)

drop table if exists `trace_test`;

CREATE TABLE `trace_test` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT 10000 DEFAULT CHARSET=utf8 ;

insert into `trace_test`(`name`)values('name2');
select * from `trace_test`;
Result:

id     name
10000  name2

3)如果表已有數(shù)據(jù) truncate之后設(shè)置

auto_increment=10000,可行。

drop table if exists `trace_test`;

CREATE TABLE `trace_test` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;

insert into `trace_test`(`name`)values('name1');
select * from `trace_test`;

truncate table `trace_test`;
alter table `trace_test` AUTO_INCREMENT=10000;

insert into `trace_test`(`name`)values('name2');
select * from `trace_test`;
Result1:

id     name
10000  name
Result2:

id     name
10000  name2

4)如果表已有數(shù)據(jù) delete from之后設(shè)置

auto_increment=10000,可行。

drop table if exists trace_test;

CREATE TABLE trace_test (
  id int(20) NOT NULL AUTO_INCREMENT,
  name varchar(255) DEFAULT NULL,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;

insert into trace_test(name)values('name1');
select * from trace_test;

delete from `trace_test`;

alter table trace_test AUTO_INCREMENT=10000;

insert into trace_test(name)values('name2');
select * from trace_test;
Result1:

id     name
10000  name
Result2:

id     name
10000  name2

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MySQL5.7.44-winx64版本W(wǎng)indows Server下載安裝過程

    MySQL5.7.44-winx64版本W(wǎng)indows Server下載安裝過程

    本文詳細介紹了如何下載、安裝和配置MySQL 5.7.44的步驟,包括設(shè)置環(huán)境變量、修改配置文件和密碼,以及如何修改默認端口
    2025-12-12
  • MySQL Proxy的安裝及基本命令使用教程

    MySQL Proxy的安裝及基本命令使用教程

    這篇文章主要介紹了MySQL Proxy的安裝及基本命令使用教程,MySQL Proxy通常被用作實現(xiàn)讀寫分離,需要的朋友可以參考下
    2015-12-12
  • mysql的約束及實例分析

    mysql的約束及實例分析

    這篇文章主要介紹了mysql的約束及實例分析,真正約束字段的是數(shù)據(jù)類型,但是數(shù)據(jù)類型約束很單一,需要有一些額外的約束,更好的保證數(shù)據(jù)的合法性,從業(yè)務(wù)邏輯角度保證數(shù)據(jù)的正確性,需要的朋友可以參考下
    2023-07-07
  • MySQL進階之索引

    MySQL進階之索引

    索引就是一種數(shù)據(jù)結(jié)構(gòu),這種結(jié)構(gòu)類似,鏈表,樹等等。但是比它們要復(fù)雜的多,索引(index)是幫助MySQL高效獲取數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)(有序),本文詳細介紹了MySQL索引,感興趣的同學(xué)可以參考閱讀
    2023-04-04
  • MySQL基礎(chǔ)之MySQL 5.7 新增配置

    MySQL基礎(chǔ)之MySQL 5.7 新增配置

    mysql數(shù)據(jù)庫性能非常高,運行速度非常快,接下來通過本文給大家介紹MySQL 5.7 新增配置,非常不錯,具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-09-09
  • 使用Navicat連接遠程服務(wù)器中在docker中運行的MySQL數(shù)據(jù)庫全過程

    使用Navicat連接遠程服務(wù)器中在docker中運行的MySQL數(shù)據(jù)庫全過程

    文章介紹了如何使用Navicat客戶端連接到運行在Docker容器中的MySQL數(shù)據(jù)庫,首先,需要獲取服務(wù)器的公網(wǎng)IP和MySQL容器的IP地址,然后,在Navicat中配置SSH連接到服務(wù)器,并測試連接,接著,配置MySQL連接參數(shù),并再次測試連接,最后,確認連接成功
    2026-03-03
  • mysql添加enum類型的字段實現(xiàn)

    mysql添加enum類型的字段實現(xiàn)

    Enum類型它允許我們在一個有限的選項列表中選擇一個值,本文主要介紹了mysql添加enum類型的字段實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • mysql?explain中key_len的含義以及計算方法

    mysql?explain中key_len的含義以及計算方法

    通常在優(yōu)化SQL查詢的時候,我們都會使用explain分析SQL執(zhí)行計劃,下面這篇文章主要給大家介紹了關(guān)于mysql?explain中key_len的含義以及計算方法的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-03-03
  • mysql中包含查詢的五種方法總結(jié)

    mysql中包含查詢的五種方法總結(jié)

    這篇文章主要給大家介紹了關(guān)于mysql中包含查詢的五種方法, 在MySQL中,包含語句是一種用來包含其他查詢語句的語句,通常用在WHERE語句中,需要的朋友可以參考下
    2023-08-08
  • MySQL入門實戰(zhàn):視圖+用戶權(quán)限管理使用方法(圖文+代碼)

    MySQL入門實戰(zhàn):視圖+用戶權(quán)限管理使用方法(圖文+代碼)

    本文詳細介紹了MySQL的視圖和用戶權(quán)限管理,視圖是虛擬表,不存儲數(shù)據(jù),數(shù)據(jù)來源于基表,視圖和基表數(shù)據(jù)雙向聯(lián)動,用戶管理與權(quán)限控制方面,最小權(quán)限原則、登錄限制、禁止root遠程登錄和按業(yè)務(wù)分用戶是生產(chǎn)環(huán)境的最佳實踐,正確總結(jié)了視圖和用戶管理的核心知識點
    2026-04-04

最新評論

井研县| 长白| 宣恩县| 浦北县| 新民市| 嘉祥县| 柳河县| 彩票| 鄢陵县| 洛隆县| 开远市| 桑植县| 江门市| 枣庄市| 江城| 巴塘县| 汉中市| 舟山市| 夏邑县| 宣恩县| 龙门县| 韶山市| 辛集市| 牡丹江市| 大埔区| 县级市| 湟源县| 永嘉县| 临潭县| 睢宁县| 中卫市| 城市| 阿克陶县| 乾安县| 慈溪市| 安泽县| 丁青县| 涟源市| 抚顺市| 周至县| 郑州市|