sql自動生成列
兩種方法:
1、用Truncate
TRUNCATETABLEname可以刪除表內所慶帆有值並重置標識值
2、用DBCCCHECKIDENT
DBCCCHECKIDENT('table_name',RESEED,new_reseed_value)如dbcccheckident("bc_pos",reseed,1)即可,
但如果表內有數據,則重設的值如果小於最大值可能會有問題,這時可以用dbcccheckident("bc_pos",reseed)即可自動重設值。
注意:
只能為不允許空值且數據類型為decimal、int、numeric、smallint、bigint或tinyint的判念列設置標識屬性。此外,不能為主鍵列設置標識屬性。
(1)sql自動生成列擴展閱讀:
關於上述標識列的引用
如果在SQL語句中引用標識列,可用關鍵字IDENTITYCOL代替,例如,若要查詢上例中ID等於1的行,
以下兩條查詢語句譽沖雹是等價的:
1、SELECT*FROMT_testWHEREIDENTITYCOL=1
2、SELECT*FROMT_testWHERE
⑵ 如何通過sql語句自動生成列
create table ( id int identity(1, 1) not null primary key, other_column varchar(50))-- 對表設置主鍵的同時,資料庫會自動的創建一個以主鍵作為名稱的唯一索引的。
⑶ sql 怎麼設置自動編號列
可以在外面下代碼 然後往資料庫里插 也可以寫存儲過程 在資料庫里生成 判斷 數字是不是你想要的位數,不滿足自動用0 補齊
⑷ 如何用sql語言創建自動增長的列
CREATE
TABLE
[表名]
(
[AUTOID]
[int]
IDENTITY
(1,
1)
NOT
NULL
,
[列名]
[varchar]
(50)
COLLATE
Chinese_PRC_CI_AS
NULL
)
ON
[PRIMARY]
GO
能看明白嗎?[AUTOID]
[int]
IDENTITY
(1,
1)
NOT
NULL
就是自動增長的欄位,自動加1.
⑸ 如何通過sql語句自動生成列
用觸發器,每次添加紀錄的時候觸發,查詢整個表格,找出最大值+1,變成這個欄位的值。呵呵,浪費時間!
用GUID的類型作為主鍵就不會重復了,默認值用newid(),這樣也不好啊!主鍵的值是默認值提供的話,你的程序必須要刷新以後才能繼續修改這個紀錄。我一般的做法,在程序中用coCreateGUID生成一個GUID填寫進去,然後post這個新紀錄,不讓SQL Server的默認值發揮作用,這樣不用刷新就可以繼續修改這個新紀錄。
⑹ sql自動生成自然數列怎麼寫
select a.col*1000+b.col*100+c.col*10+d.col+1 as col
from
(select 0 as col union all select 1 union all select 2 union all
select 3 union all select 4 union all select 5 union all
select 6 union all select 7 union all select 8 union all select 9)a
cross join
(select 0 as col union all select 1 union all select 2 union all
select 3 union all select 4 union all select 5 union all
select 6 union all select 7 union all select 8 union all select 9)b
cross join
(select 0 as col union all select 1 union all select 2 union all
select 3 union all select 4 union all select 5 union all
select 6 union all select 7 union all select 8 union all select 9)c
cross join
(select 0 as col union all select 1 union all select 2 union all
select 3 union all select 4 union all select 5 union all
select 6 union all select 7 union all select 8 union all select 9)d
order by col
⑺ 如何用sql創建自增列
SQL SERVER?
identity屬性
create table tablename
(
id int identity,
c varchar(10)
)
id就是自增列。
已經創建的表無法直接把某欄位設置為自增,只能把原來的欄位刪除,之後再添加具有自增屬性的列。
步驟如下
--刪除列
alter table a
drop column list
--添加具有identity屬性的列
alter table a
add list int identity