2017-02-16 64 views
0

我有一個沒有id列的MSSQL表,主要是因爲我意外地丟棄了它並重新創建列。有沒有在SQL中自動添加值的方法,所以我不必手動在那裏放置一個ID號碼?自動添加列到SQL Server

+0

並使列自動遞增。在SQL SERVER中,它被稱爲IDENTITY –

+1

請記住,如果你有一個從其他表的關係到該表的id並且在現有記錄中分配新的id,你還需要更新其他表中的id – Kostis

回答

1

使用CTE爲初始覆育:

with CTE as 
(
select t1.*, row_number() over (order by AnyColumn) as RN 
from MyTable t1 
) 
update CTE 
set ID = RN 
+0

John我認爲ID是空白的,那麼如何檢查設置ID = RN –

0

解決方案1:在新列的測試數據庫恢復最新備份然後更新標識的

解決方案2:更新ID的從其他關係表基於列映射。