如何在MYSQL插數(shù)據(jù)ID自增的方法。
創(chuàng)新互聯(lián)建站專注于網(wǎng)站建設(shè),為客戶提供做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)開發(fā)服務(wù),多年建網(wǎng)站服務(wù)經(jīng)驗(yàn),各類網(wǎng)站都可以開發(fā),成都品牌網(wǎng)站建設(shè),公司官網(wǎng),公司展示網(wǎng)站,網(wǎng)站設(shè)計(jì),建網(wǎng)站費(fèi)用,建網(wǎng)站多少錢,價(jià)格優(yōu)惠,收費(fèi)合理。
如下參考:
1.在添加字段之前,第一個(gè)應(yīng)該首先檢查當(dāng)前tb1表的結(jié)構(gòu),如下圖所示。
2.實(shí)例字段列添加到表,如下所示。
3.再次看表結(jié)構(gòu)和比較之前和之后的情況添加字段,如下圖所示。
4.最后,插入新的數(shù)據(jù)行看到的樣子,最后添加自動(dòng)增長(zhǎng)的字段,如下所示。
注意事項(xiàng):
MySQL使用的SQL語(yǔ)言是訪問(wèn)數(shù)據(jù)庫(kù)最常用的標(biāo)準(zhǔn)語(yǔ)言。MySQL軟件采用雙重許可政策,分為社區(qū)版,商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特性,一般中小網(wǎng)站開發(fā)選擇MySQL作為數(shù)據(jù)庫(kù)。
1、創(chuàng)建表時(shí)指定AUTO_INCREMENT自增值的初始值(即起始值):
CREATE TABLE XXX (ID INT(5) PRIMARY KEY AUTO_INCREMENT) AUTO_INCREMENT=100;
2、通過(guò) ALTER TABLE 修改初始值(但是要大于表中的 AUTO_INCREMENT 自增值,否則設(shè)置無(wú)效):
ALTER TABLE XXX AUTO_INCREMENT=100;
3、如果自增序列的最大值被刪除了,則在插入新記錄時(shí),該值被重用:
就是說(shuō)如果表中原本有AUTO_INCREMENT屬性值連續(xù)為78、100的值,但100這個(gè)數(shù)據(jù)被刪除了,下此再添加數(shù)據(jù)的時(shí)候自增值為101,100被重用了。
即使在你將整個(gè)表中的所有數(shù)據(jù)delete清空后,之前的自增序列最大值還是會(huì)被重用。
解決辦法是:
使用 ALTER TABLE XXX AUTO_INCREMENT=0; 重新設(shè)置自增初始值。
在MySQL中可通過(guò)字段的AUTO_INCREMENT屬性來(lái)自動(dòng)生成。
mysql數(shù)據(jù)庫(kù)表主鍵自增長(zhǎng)的sql語(yǔ)句
1、不控制主鍵的起點(diǎn)
create?table?emb_t_dictBusType
(
emb_c_busTypeID??????int?not?null?auto_increment,
emb_c_busTypeEnName??varchar(255)?not?null,
emb_c_busTypeZhName??varchar(255)?not?null,
primary?key(emb_c_busTypeID)??
)engine=INNODB??default?charset=gbk;
2、控制主鍵的起點(diǎn)
create?table?emb_t_dictBusType
(
emb_c_busTypeID??????int?not?null?auto_increment,
emb_c_busTypeEnName??varchar(255)?not?null,
emb_c_busTypeZhName??varchar(255)?not?null,
primary?key(emb_c_busTypeID)??
)engine=INNODB?auto_increment=1001?default?charset=gbk;
設(shè)置自增列
MYSQL的自增列一定要是有索引的列,設(shè)置種子值要在表的后面設(shè)置
--mysql
-- 設(shè)置自增ID從N開始
CREATE TABLE empautoinc(
ID INT PRIMARY KEY AUTO_INCREMENT
) AUTO_INCREMENT = 100 ; --(設(shè)置自增ID從100開始)
insert into empautoinc(id) values(null);
Query OK, 1 row affected (0.00 sec)
mysql select * from empautoinc;
+-----+
| ID |
+-----+
| 100 |
+-----+
1 row in set (0.00 sec)
show table status like 'empautoinc'G;
*************************** 1. row ***************************
Name: empautoinc
Engine: InnoDB
Version: 10
Row_format: Compact
Rows: 1
Avg_row_length: 16384
Data_length: 16384
Max_data_length: 0
Index_length: 0
Data_free: 0
Auto_increment: 101
Create_time: 2016-10-27 01:50:32
Update_time: NULL
Check_time: NULL
Collation: utf8_general_ci
Checksum: NULL
Create_options:
Comment:
1 row in set (0.00 sec)
設(shè)置自增列的步長(zhǎng),可以分為全局級(jí)別和會(huì)話級(jí)別
如果是會(huì)話級(jí)別,那么當(dāng)用戶新建一個(gè)會(huì)話的時(shí)候,那么步長(zhǎng)又回到了全局級(jí)別,所以mysql的步長(zhǎng)跟sqlserver的步長(zhǎng)有很大的不同
mysql不能設(shè)置為 表級(jí)別 的步長(zhǎng)
私信666領(lǐng)取資料
文章題目:在mysql怎么自動(dòng)增長(zhǎng) mysql自動(dòng)增長(zhǎng)是什么意思
鏈接URL:http://muchs.cn/article24/dojhgje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、Google、定制網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)