我有一個Players用這些列命名的表
Id, Name, Age
Id并且Age是整數,并且Name是一個char(50).
我想在這個表上創建一個聚集索引,以便該表將按Name. 我發現每張有主鍵的表都已經在主鍵上有聚集索引了,而且一張表上只能有一個聚集索引,如果我想再增加一個,我必須把主鍵去掉上的約束Id。
MyPlayer.Id已經作為多個其他表中的外鍵,所以我仍然希望在 上有主鍵約束Id,但我還想要一個聚集索引來按名稱對記錄進行排序。
我怎樣才能在 SQL Server 中做到這一點?我正在使用 Microsoft SQL Server Management Studio。
uj5u.com熱心網友回復:
你需要:
- 首先洗掉表的所有 FK 約束
Player - 然后洗掉主聚集索引
Id - 創建一個帶有非聚集索引的新主鍵
Player.Id- 使用以下命令:ALTER TABLE dbo.Player ADD CONSTRAINT PK_Player PRIMARY KEY NONCLUSTERED (Id); - 然后在上面創建聚集索引
Player.Name - 重新建立所有表中的所有 FK 約束,以
Player
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/366941.html
標籤:sql-server 短信
上一篇:如何使用子查詢創建新列
下一篇:從xml匯入到標識列
