久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

mysql如何給字段增加自增屬性

146次閱讀
沒有評論

共計(jì) 1760 個(gè)字符,預(yù)計(jì)需要花費(fèi) 5 分鐘才能閱讀完成。

這篇文章主要介紹“mysql 如何給字段增加自增屬性”,在日常操作中,相信很多人在 mysql 如何給字段增加自增屬性問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”mysql 如何給字段增加自增屬性”的疑惑有所幫助!接下來,請跟著丸趣 TV 小編一起來學(xué)習(xí)吧!

在 mysql 中,可以通過給字段添加“AUTO_INCREMENT”屬性來給字段增加自增屬性,語法“alter table 表名 add column 字段名 數(shù)據(jù)類型 AUTO_INCREMENT;”。

本教程操作環(huán)境:windows7 系統(tǒng)、mysql8 版本、Dell G3 電腦。

通過給字段添加 AUTO_INCREMENT 屬性來實(shí)現(xiàn)字段自增長。語法格式如下:

 字段名   數(shù)據(jù)類型  AUTO_INCREMENT

默認(rèn)情況下,AUTO_INCREMENT 的初始值是 1,每新增一條記錄,字段值自動(dòng)加 1。

一個(gè)表中只能有一個(gè)字段使用 AUTO_INCREMENT 約束,且該字段必須有唯一索引,以避免序號重復(fù)(即為主鍵或主鍵的一部分)。

AUTO_INCREMENT 約束的字段必須具備 NOT NULL 屬性。

AUTO_INCREMENT 約束的字段只能是整數(shù)類型(TINYINT、SMALLINT、INT、BIGINT 等)。

AUTO_INCREMENT 約束字段的最大值受該字段的數(shù)據(jù)類型約束,如果達(dá)到上限,AUTO_INCREMENT 就會(huì)失效。

自增字段一般用于主鍵中。

當(dāng)主鍵定義為自增長后,這個(gè)主鍵的值就不再需要用戶輸入數(shù)據(jù)了,而由數(shù)據(jù)庫系統(tǒng)根據(jù)定義自動(dòng)賦值。每增加一條記錄,主鍵會(huì)自動(dòng)以相同的步長進(jìn)行增長。

實(shí)例:

已有的 mysql 數(shù)據(jù)表,希望增加一個(gè)自增的字段,并設(shè)置新數(shù)據(jù)的初始值。

實(shí)際上不復(fù)雜,只是做個(gè)備忘。

測試表

CREATE TABLE `t_abc` ( `name` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

測試數(shù)據(jù):

INSERT INTO `t_abc` (`name`)
VALUES
 (mike),
 (tom),
 (jack

添加自增字段并設(shè)置新數(shù)據(jù)的起始值

/* 增加一個(gè)自增主鍵字段,分兩步操作 */
/* 首先增加自增字段 */
alter table t_abc add column id int auto_increment primary key;
/* 執(zhí)行完上面這一條,字段增加,但值為空 */
/* 執(zhí)行這一條,它會(huì)自動(dòng)為已存在的數(shù)據(jù)的自增字段賦初值,從 1 開始,同時(shí)將后續(xù)新增的數(shù)據(jù)從 100 開始 */
alter table t_abc auto_increment=100;

修改已有數(shù)據(jù)初始值

/* 如果希望所有的數(shù)據(jù)都從 10001  開始,我們可以這么做 */
alter table t_abc add column id int auto_increment primary key;
/* 這里沒有指定任何數(shù)值,執(zhí)行完后只為自增字段賦從 1 開始的初始值,其實(shí)隱含的設(shè)置當(dāng)前表自增字段從 1 開始 */
alter table t_abc auto_increment;
/* 將所有數(shù)據(jù)增加 10000*/
update t_abc set id=id+10000;
/*  前面的 100  我們是任意指定的,現(xiàn)在我們應(yīng)該指定數(shù)據(jù)庫中的 maxId+ 1 作為下一個(gè)數(shù)據(jù)的起始值 */
set @maxId=1;
select max(id) into @maxId from t_abc; /* 表中有 3 條數(shù)據(jù),那么 maxId  現(xiàn)在是 10003*/
select @maxId+1 from dual; /* 10004 */
alter table t_abc auto_increment=10004; /* 這里不能直接引用變量,因此手動(dòng)挪移過來 */

驗(yàn)證一下

insert into t_abc(name) values( Marry 
select * from t_abc order by id desc;

到此,關(guān)于“mysql 如何給字段增加自增屬性”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注丸趣 TV 網(wǎng)站,丸趣 TV 小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-17發(fā)表,共計(jì)1760字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 宾阳县| 延安市| 施秉县| 十堰市| 贵阳市| 资中县| 宁化县| 西畴县| 禹州市| 秀山| 凌云县| 南开区| 陆川县| 达孜县| 青冈县| 新野县| 儋州市| 镇康县| 旬阳县| 双江| 望江县| 治多县| 周宁县| 荥经县| 左权县| 霍州市| 当涂县| 广丰县| 仙桃市| 三台县| 尼木县| 泰安市| 孝昌县| 尚志市| 滦南县| 会东县| 修武县| 齐齐哈尔市| 潜山县| 庆城县| 株洲县|