無法從下表中刪除[U_Family]
列:從表問題(SQL Server 2008中)刪除列
表創建腳本:
CREATE TABLE [dbo].[Users](
[U_Id] [int] IDENTITY(101,1) NOT NULL,
[U_Name] [nvarchar](50) NULL,
[U_Family] [nvarchar](50) NULL,
CONSTRAINT [PK_Users] PRIMARY KEY CLUSTERED
(
[U_Id] ASC
),
CONSTRAINT [IX_UserIdUnique] UNIQUE NONCLUSTERED
(
[U_UserId] ASC
)
) ON [PRIMARY]
GO
CREATE UNIQUE NONCLUSTERED INDEX [IX_Users(UserId)] ON [dbo].[Users]
(
[U_Id] ASC
)
INCLUDE ([U_Name],
[U_Family])) ON [PRIMARY]
GO
錯誤消息:
「用戶表 - 無法修改表。索引'IX_Users(UserId)'依賴於 列'U_Family'。 ALTER TABLE DROP COLUMN U_Family失敗,因爲一個或多個對象訪問此列。
我知道這個問題是因爲該指數:
CREATE UNIQUE NONCLUSTERED INDEX [IX_Users(UserId)] ON [dbo].[Users]
(
[U_Id] ASC
)
INCLUDE ([U_Name],
[U_Family])) ON [PRIMARY]
GO
,但我從來沒有發現一個語法編輯這個指數和包含的列刪除[U_Family]
。
我不能刪除這個索引,因爲它被外鍵約束使用,我不應該刪除它。
任何解決方案????
在此先感謝。