今天來介紹一下set identity_insert
mssql 為表中的標識列插入顯式值
setidentity_insert tb on
;set
identity_insert tb off;
其中:
setidentity_insert tb on;
是開啟表示插入顯示值
setidentity_insert tb off;
是關閉插入顯示值
具體用法來做個簡單的小例子:
1)首先我們來建立乙個關係表:其中id是自動增長字段
createtable tb (id int
identity
primary
key, tb_valuesvarchar(40))
2)然後我們想表中插入一條資料
insertinto tb (id, tb_value) values(2, '
mydata
')
執行結果會報錯:結果會導致錯誤:「當 identity_insert 設定為 off 時,不能向表 'products' 中的標識列插入顯式值。」
3)對上述sql**稍微改動
setidentity_insert tb on
insert
into tb(id, tb_value) values(2, '
mydata')
setidentity_insert tb off
執行成功
將顯式值插入表的標識列中
允許將顯式值插入表的標識列中。set identity insert database name schema name table 任何時候,乙個會話中只有乙個表的 identity insert 屬性可以設定為 on。如果某個表已將此屬性設定為 on,則對另乙個表發出 set identity ...
重置MSSQL的Identity標識列的值
當表中的記錄被全部刪除,但此時標識列的值越來越大的時候,如果不加以重置,它還會無休止的增長。可以用如下語句重置標識列 dbcc checkident table name new reseed value 引數 table name 是要對其當前標識值進行檢查的表名。表名必須符合識別符號規則。有關更...
Oracle中為表設定自動增長的標識列
建立序列 create sequence 序列名稱 start with 1 起始值 increment by 1 增量 maxvalue 99999999 最大值 nocycle 達到最大值後是否重新計算,當前為不重新計算,cycle為重新計算 nocache 不要快取,容易跳號 建立觸發器 cr...