我有兩個包含10到200萬行的GUID主鍵和通過外鍵相關的12個表的表。基表每個都有10-20個索引。在SQL Server相關表中將主鍵從GUID更改爲BigInt的方法
我們正在從GUID移動到BigInt主鍵。我想知道是否有人對方法有任何建議。現在,這是我正在思考的方法:
- 刪除所有涉及表上的所有索引和fkey。
- 添加「NewPrimaryKey」列各表
- 使在兩個基表
- 腳本數據改變「更新表x中的鍵的身份,設置NewPrimaryKey = y其中OldPrimaryKey = Z
- 重命名原始的PrimaryKey以 'oldprimarykey'
- 重命名 'NewPrimaryKey' 列 '的PrimaryKey'
- 腳本回所有的索引和fkeys
這個問題似乎像一個好方法? 有誰知道一個工具或腳本,將有助於此? TD:根據附加信息編輯。看到這個博客文章,解決了當GUID是主要的方法:http://www.sqlmag.com/blogs/sql-server-questions-answered/sql-server-questions-answered/tabid/1977/entryid/12749/Default.aspx
你最終走哪條路?除了你所說的之外,應用程序必須確保知道PrimaryKey現在是你的新數據類型而不是Guid。 – user420667 2017-04-12 20:51:41