20928

[Mysql] 修改欄位的自動索引值autoindex (auto_increment )

“
Mysql 新增、刪除、修改、查看欄位的自動索引值autoindex (auto_increment)
„

分享此文連結 //n.sfs.tw/10483

分享連結 [Mysql] 修改欄位的自動索引值autoindex (auto_increment )@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 13:50:04 最後編修
2016-12-25 10:54:35 By 張○○
 

自動目錄

Mysql 每個表格都可以設定一個具有自動編號(auto_increment)屬性的欄位,而且這個欄位一定要是主鍵,唯一鍵或索引鍵都不可以,換句話說,已設成自動增加的欄位,就不能改變鍵名。這個設定自動編號的欄位又稱為自動欄位(auto column),自動編號的下一個值又叫autoindex。

自動欄位預設是從1開始編號,後面新增的資料會自動的加上1,所以會是 1, 2, ,3, 4, .....最大值由欄位的型態決定。

設定欄位自動編號

例如sn這個欄位設定成自動欄位,使用change語法:
ALTER TABLE `test` CHANGE `sn` `sn` INT( 11 ) NOT NULL AUTO_INCREMENT;

移除自動欄位

ALTER TABLE `test` CHANGE `sn` `sn` INT( 11 ) NOT NULL;

改變自動欄位的Autoindex

alter table tablename AUTO_INCREMENT=664441;

要注意上例中664441代表下一筆資料寫入時的索引值,而不是目前最後一筆的索引值

如果索引值改的主鍵最大值還小,則不具作用。例如現在主鍵已有100筆資料(編號100),你要把他改成90,下了sql語法不會有任何變化。

查看目前的索引值

SHOW TABLE STATUS where name='t表格名';

這樣會秀出表格狀態,看到Auto_increment那欄就對了。

參考資料

[1] http://stackoverflow.com/questions/17482554/change-autoindex-number-mysql


原文 2014-09-28 03:04:24

END

你可能感興趣的文章

[MYSQL] 查看資料表狀態 要看資料表的狀態,不是結構喔,以前我都會用 procedure analyse(): SELECT `colname`

[mysqldump] Mysqldump時出現記憶體錯誤Out of memory 當進行 mysqldump 時出現 Out of memory (Needed xxxxx bytes) 的錯誤,該如何處理?

[Mysql] Mysqldump 的預設編碼 --default-character-set 有時Mysqldump 也得要指定編碼才不會造成匯出的亂碼

[Mysql/Mariadb] GROUP_CONCAT 函數 MySQL 中和 group by 一起用的函式,如果我們要算數值的總和或平均,可以使用 sum() 或 avg() 。但是我們如果要在 group by 中把字串「黏起來」,不是使用 concat(

[Mysql/Mariadb] Left Join 和 Right Join 合併表單 SQL語法中的 Left Join 和 Right Join 很常用,但是我常會忘記,所以寫下來備忘。

[Docker] Mariadb-Galera出現Incorrect definition of table mysql.column_stats:'hist_type'及 'histogram' 使用docker的Mariadb-galera出現'hist_type'及 'histogram'型別錯誤的解決方法。

隨機好文

[jQuery] 利用load()來達成ajax的寫法 jQuery中利用load()來達成ajax的寫法,也有人稱他是假的ajax,作法就是..

HP SAS硬碟leds燈號說明 HP SAS硬碟leds燈號(hp g7/g6系統適用)說明

[jQuery] select 元件的取值及給值 html中的元件select,在jquery中要如何使用?

SELinux 常用指令和檔案 在Redhat系列中,Centos5以後加入了selinux,他並沒有這麼可怕,不必每次看到Selinux ,就想把他

[JAVA] JWS, JWT, JWE, JOSE是什麼? [JAVA] JWS, JWT, JWE, JOSE是什麼?非常的複雜,儘量來搞清楚..

精讚::