久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

sql IDENTITY_INSERT對(duì)標(biāo)識(shí)列的作用和使用

瀏覽:33日期:2023-03-06 14:25:56

一般情況下,當(dāng)數(shù)據(jù)表中,莫一列被設(shè)置成了標(biāo)識(shí)列之后,是無(wú)法向標(biāo)識(shí)列中手動(dòng)的去插入標(biāo)識(shí)列的顯示值。但是,可以通過(guò)設(shè)置SET IDENTITY_INSERT屬性來(lái)實(shí)現(xiàn)對(duì)標(biāo)識(shí)列中顯示值的手動(dòng)插入。

寫(xiě)法:

1).SET IDENTITY_INSERT 表名 ON :表示開(kāi)啟對(duì)標(biāo)識(shí)列顯示值插入模式,允許對(duì)標(biāo)識(shí)列顯示值進(jìn)行手動(dòng)插入數(shù)據(jù)。

2).SET IDENTITY_INSERT 表名 OFF:表示關(guān)閉對(duì)標(biāo)識(shí)列顯示值的插入操作,標(biāo)識(shí)列不允許手動(dòng)插入顯示值。

注意:IDENTITY_INSERT的開(kāi)啟ON和關(guān)閉OFF是成對(duì)出現(xiàn)的,所以,在執(zhí)行完手動(dòng)插入操作之后,記得一定要把IDENTITY_INSERT設(shè)置為OFF,否則下次的自動(dòng)插入數(shù)據(jù)會(huì)插入失敗。

例如:

創(chuàng)建一張表b1,b_id為標(biāo)識(shí)列,設(shè)置為唯一標(biāo)識(shí),從1開(kāi)始,每次插入新數(shù)據(jù)時(shí),值都遞增1,不允許為空:

CREATE table b1(  b_id int identity(1,1) primary key not null,     b_name varchar(20) null)

當(dāng)把表b1中b_id這一列設(shè)置為唯一標(biāo)識(shí)列的時(shí)候,IDENTITY_INSERT屬性的值就默認(rèn)被設(shè)置為了OFF了。標(biāo)識(shí)列b_id列不允許手動(dòng)去插入顯示值,只能由系統(tǒng)自動(dòng)按照排順序去插入顯示的值。

1.當(dāng)IDENTITY_INSERT 為OFF時(shí),往表b1中插入2條數(shù)據(jù),往標(biāo)識(shí)列中手動(dòng)插入顯示值:

代碼1:

 insert into b1(b_id,b_name) values(1,"莉莉") insert into b1(b_id,b_name) values(2,"阿呆")

插入結(jié)果:

代碼2:

 insert into b1(b_name) values("莉莉") insert into b1(b_name) values("阿呆")

插入結(jié)果:

說(shuō)明:當(dāng)把IDENTITY_INSERT設(shè)置為OFF時(shí),標(biāo)識(shí)列是不允許手動(dòng)插入顯示值的,只能有系統(tǒng)去自動(dòng)插入標(biāo)識(shí)列的顯示值。

2.當(dāng)IDENTITY_INSERT 為ON時(shí),往表b1中插入2條數(shù)據(jù),往標(biāo)識(shí)列中手動(dòng)插入顯示值:

代碼1:

set identity_insert b1 on --開(kāi)啟對(duì)標(biāo)識(shí)列的插入模式,標(biāo)識(shí)列允許手動(dòng)插入顯示值

insert into b1(b_id,b_name) values(8,"小白")  --手動(dòng)去插入標(biāo)識(shí)列b_id的顯示值為8insert into b1(b_id,b_name) values(9,"小黑")

set identity_insert b1 off --關(guān)閉對(duì)標(biāo)識(shí)列的插入操作,標(biāo)識(shí)列不允許手動(dòng)插入顯示值

插入結(jié)果:

代碼2:

set identity_insert b1 on --開(kāi)啟對(duì)標(biāo)識(shí)列的插入模式,標(biāo)識(shí)列允許手動(dòng)插入顯示值

insert into b1(b_name) values("小胖")  --手動(dòng)去插入標(biāo)識(shí)列b_id的顯示值為8insert into b1(b_name) values("小寶")

set identity_insert b1 off --關(guān)閉對(duì)標(biāo)識(shí)列的插入操作,標(biāo)識(shí)列不允許手動(dòng)插入顯示值

插入結(jié)果:

說(shuō)明:當(dāng)設(shè)置IDENTITY_INSERT為ON時(shí),必須要指定標(biāo)識(shí)列中要插入的的顯示值,要手動(dòng)的插入標(biāo)識(shí)列中的顯示值。因?yàn)橄到y(tǒng)將不再對(duì)標(biāo)識(shí)列的顯示值自動(dòng)插入了。所以,必須要手動(dòng)去給標(biāo)識(shí)列插入顯示值。

到此這篇關(guān)于sql IDENTITY_INSERT對(duì)標(biāo)識(shí)列的作用和使用的文章就介紹到這了,更多相關(guān)sql IDENTITY_INSERT對(duì)標(biāo)識(shí)列內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: MsSQL
主站蜘蛛池模板: 顺义区| 祁东县| 榆树市| 内江市| 辽中县| 昔阳县| 龙游县| 寻乌县| 通榆县| 江阴市| 金坛市| 建始县| 筠连县| 梅州市| 讷河市| 黔南| 陈巴尔虎旗| 内黄县| 托里县| 宁都县| 讷河市| 洪湖市| 紫阳县| 阿鲁科尔沁旗| 茶陵县| 左贡县| 宜兰市| 公主岭市| 开封市| 苍溪县| 县级市| 平凉市| 那曲县| 乳源| 白银市| 嘉鱼县| 松原市| 积石山| 德兴市| 繁峙县| 江油市|