自增字段不連續 資料庫自增的主鍵不連續問題

2021-10-16 16:20:08 字數 733 閱讀 4190

問題:資料庫自增的主鍵不連續,sql的自增列挺好用,只是開發過程中一旦刪除資料,標識列就不連續了,寫起來,也很鬱悶。

mysql

當清空乙個表的時候,重新插入資料,發現auto_increment屬性的字段計數不是從1開始的時候,可以使用以下命令

手動修改

mysql可以手動去修改主鍵,但是主鍵一般不會修改。

還可以插入哪些被刪除的主鍵。

刪庫方法一

delete from test;

alter table `test` auto_increment=1

(好處,可以設定auto_increment 為任意值開始)

方法二truncate table test

(好處,簡單,auto_increment 值重新開始計數)

一般情況下我們使用第二個就可以了,記住以上情況都是徹底刪除所有記錄。

sqlserver

–刪除原表資料,並重置自增列

truncate table tablename --truncate方式也可以重置自增字段

–重置表的自增欄位,保留資料

dbcc checkident (tablename,reseed,0)

– 設定允許顯式插入自增列

set identity_insert tablename on

– 當然插入完畢記得要設定不允許顯式插入自增列

set identity_insert tablename off

Oracle資料庫主鍵自增

在學習mysql時,我們很容易通過auto increment就能實現主鍵自增的功能,但是在oracle資料庫中,是沒有這個關鍵字的,所以也不能通過這樣來實現主鍵自增。下面我就為大家介紹兩種實現主鍵自增的方法。兩種方法的基礎都有乙個概念就是序列 sequence 的概念,一種是利用序列和顯式呼叫的方...

資料庫主鍵自增策略

資料庫主鍵自增策略 1.自增長主鍵策略 優點 簡單,不需要程式做特別處理 缺點 這種方法對以後如果專案移植到其他資料庫改動會比較大,而且如果多表合併,就會出現重複的主鍵 2.使用時間戳 隨機數 優點 時間簡單,與資料庫無關,移植性較好 缺點 長度太長,最少也得20位,不進占空間並且建索引的話效能會比...

自增字段不連續 地下連續牆施工

地下連續牆是一種較為先進的地下工程結構形式和施工工藝。它是在地面上利用特製的成槽機械,沿著開挖工程的周邊 例如地下結構的邊牆 在泥漿 又稱穩定液,如膨潤土泥漿 護壁的情況下進行開挖,形成一定長度的溝槽,再將製作好的鋼筋籠放入槽段內,採用導管法進行水下混凝土澆注,形成乙個單元的牆段,各牆段之間採用特定...