SQL Server 中數(shù)據(jù)表往往會(huì)設(shè)置sql/20939.html">自增列,常見(jiàn)的比如說(shuō) 首列的ID列。 往數(shù)據(jù)表插入新數(shù)據(jù)的時(shí)候,自增列是跳過(guò)的,無(wú)需插入即會(huì)按照設(shè)置的自增規(guī)則進(jìn)行列增長(zhǎng)。那么,如果我們想往自增列插入我們指定的數(shù)據(jù)時(shí)該怎么做呢?
一:建立一張簡(jiǎn)單的測(cè)試表
CREATE TABLE randy_test (id INT IDENTITY ( 1 , 1 ), num INT )
二:如果強(qiáng)行插入數(shù)據(jù)時(shí):
INSERT INTO randy_test VALUES (1,11)
消息 8101,級(jí)別 16,狀態(tài) 1,第 1 行
僅當(dāng)使用了列列表并且 IDENTITY_INSERT 為 ON 時(shí),才能為表'randy_test'中的標(biāo)識(shí)列指定顯式值。
可以看到,數(shù)據(jù)庫(kù)提示 不能給標(biāo)識(shí)列指定顯示值,除非 將數(shù)據(jù)表設(shè)置IDENTITY_INSERT為ON
三:設(shè)置標(biāo)識(shí)列插入開(kāi)關(guān) 開(kāi)啟,然后執(zhí)行我們的插入操作
SET IDENTITY_INSERT randy_test ON INSERT INTO randy_test (id,num) VALUES (1,11);INSERT INTO randy_test (id,num) VALUES (2,22);set identity_insert randy_test OFF(1 行受影響)(1 行受影響)
結(jié)果如下圖:
SELECT *FROM randy_test AS rtid num1 112 22
總結(jié)
以上所述是小編給大家介紹的SQL 在自增列插入指定數(shù)據(jù)的操作方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)VeVb武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選