在SQL Server中将列从NULL更改为NOT NULL

时间:2018-01-19 21:08:23

标签: sql-server sql-server-2014-express

我正在尝试在SQL Server 2014中将列从NULL更改为NOT NULL。这是我的代码:

ALTER TABLE purchase_order_line ALTER COLUMN pol_sl_id INT NOT NULL 

但是,我通过以下错误消息阻止了这样做:

Msg 5074, Level 16, State 1, Line 1
The index 'idx_pol_33' is dependent on column 'pol_sl_id'.
Msg 4922, Level 16, State 9, Line 1
ALTER TABLE ALTER COLUMN pol_sl_id failed because one or more objects access this column.

我可以确认此列中没有NULL值。任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:3)

您的错误很简单。您必须删除并重新创建索引和统计信息。

喜欢:

DROP STATISTICS table.statistics_name | view.statistics_name [ ,...n ]
DROP INDEX <table_name>.<index_name>
相关问题