SQL Server:由于“依赖于列”错误,无法更改nvarchar列长度

时间:2018-03-01 04:03:53

标签: sql-server

我正在尝试缩短nvarchar列的长度。 nvarchar中的所有现有数据均未超过新长度。

ALTER TABLE [MyObject]  
    ALTER COLUMN [Alias] NVARCHAR(64) NOT NULL

错误:

  

对象'MyObject_OppID_70e6d249_uniq'依赖于列'别名'

我不明白另一列如何依赖非外键nvarchar列。

1 个答案:

答案 0 :(得分:1)

你应该首先删除像

这样的约束
ALTER TABLE  [MyObject] DROP CONSTRAINT MyObject_OppID_70e6d249_uniq;

同样,您可能需要在列上删除其他相关约束。

之后你应该能够改变专栏。

ALTER TABLE [MyObject] ALTER COLUMN [Alias] nvarchar(64) NOT NULL

完成后,您可以通过更改表格来重新创建所需的约束。