兩種方法修改或者重置mysql中的自增字段的值:autoIncrement;
我們提供的服務(wù)有:網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、泰山ssl等。為成百上千企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學管理、有技術(shù)的泰山網(wǎng)站制作公司
其中方法二可以修改成任意值。
alter table questionlib modify id?int(11) auto_increment;
注意事項:
修改后從下一條記錄開始自動增長。如果想讓原來的自動增長就得復制現(xiàn)有表的結(jié)構(gòu)(無id),添加id并加上AUTO_INCREMENT,然后通過循環(huán),添加n條空記錄,然后對應(yīng)先前表的id,依次插入數(shù)據(jù)。
擴展資料:
mysql自動增長開始值設(shè)置總結(jié)
1、創(chuàng)建表,設(shè)置表主鍵id自動增長,默認自動增長的起始值為1開始。
2、當表數(shù)據(jù)不為空的時候,重新去修改自動增長id開始值,mysql會主動去核對你設(shè)置的起始值是否是當前數(shù)據(jù)庫已有id的最大值+1; 若是則修改成功,若不是則修改不成功 (默認還是id最大值+1)
3、要設(shè)置自動增長為1開始,需要清空表數(shù)據(jù)才行。alter table table_name AUTO_INCREMENT=1
4、若每次直接在數(shù)據(jù)庫里面插入數(shù)據(jù),則會自動的去修改當前表的自動增長起始值(設(shè)置自動增長起始值為當前插入成功的數(shù)據(jù)的id)
值1。說你寫一個示例應(yīng)用程序,你已經(jīng)有幾行插入表中。現(xiàn)在要刪除這些行,并自動增量列復位,使新行插入將有主鍵的值1 1。
有幾個方法來實現(xiàn)這一點。
1。直接復位自動增量值
ALTER TABLE語法提供了一種方法來重新設(shè)置自動增量列。采取看看下面的例子。
ALTER TABLE table_name AUTO_INCREMENT = 1;
請注意,你不能重置計數(shù)器的值小于或等于任何已使用的。對于MyISAM,如果該值小于或等于目前在AUTO_INCREMENT列的最大值,該值是目前最大的加一復位。對于InnoDB,如果該值大于當前列中的最大值,沒有出現(xiàn)錯誤和不改變當前序列值。
2。截斷表截斷表自動增量值自動復位為0。
TRUNCATE TABLE table_name;
重置mysql的自增列AUTO的方法有:
方法一: delete from tb1;
ALTER TABLE tbl AUTO_INCREMENT = 100;
注意:如果表列和數(shù)據(jù)很多, 速度會很慢, 如90多萬條, 會在10分鐘以上.
方法二: truncate tb1;
重置mysql的自增列 的步驟如下:
1. 支持設(shè)置自增列的值 ;
ALTER TABLE table_name AUTO_INCREMENT = 1;
這種方式只能設(shè)置大于當前使用的值,不能設(shè)置小于等于當前已經(jīng)使用的自增列的值。myisam如果設(shè)置小于等于,則自增列的值會自動設(shè)置為 :
當前最大值加1,innodb則不會改變。
2.通過TRUNCATE把自增列設(shè)置為0,從MySQL 5.0.13開始TRUNCATE重置自增列為0.myisam和innode都一樣。
TRUNCATE TABLE table_name;
3.drop和create重建表方式重置自增列為0
DROP TABLE table_name;
CREATE TABLE table_name { ... };
使用兩種方法重置mysql的自增列AUTO的好處有:
方法一:可設(shè)置 AUTO_INCREMENT 為任意值開始;
方法二:簡單, AUTO_INCREMENT 值重新開始計數(shù);
注意:使用以上方法都會將現(xiàn)有數(shù)據(jù)刪除.