Sql Msg 5074,第16级,状态1,第4行对象“SO_Not_Null”依赖于列“SO”

Sql Msg 5074,第16级,状态1,第4行对象“SO_Not_Null”依赖于列“SO”,sql,sql-server,Sql,Sql Server,有人能告诉我如何删除依赖项吗 Alter Table NYM_Player_Stats Alter Column SO char(38) Msg 5074,16级,状态1,第4行 对象“SO_Not_Null”依赖于列“SO” 味精4922,第16级,第9状态,第4行 ALTER TABLE ALTER COLUMN因此失败,因为一个或多个对象访问此列 表结构: Team (PK, nchar(10), not null) Year (nchar (10), not null) S

有人能告诉我如何删除依赖项吗

Alter Table NYM_Player_Stats
    Alter Column SO char(38)  
Msg 5074,16级,状态1,第4行 对象“SO_Not_Null”依赖于列“SO”

味精4922,第16级,第9状态,第4行 ALTER TABLE ALTER COLUMN因此失败,因为一个或多个对象访问此列

表结构:

Team (PK, nchar(10), not null)
Year (nchar (10), not null)
SO (numeric (18,0)
AB (char (38), not null)
Runs (char (38) not null)
Hits (char(38) not null)
从sys.objects运行select TYPE,其中NAME='so_not_null',结果为TYPE 1 C

SO_NOT_NULL的一种C类型是A。要更改列定义,首先需要删除约束。更改列后,可以重新创建约束

为此,请完成以下步骤:

执行SYS.CHECK_CONSTRAINTS中的SELECT DEFINITION,其中NAME='so_not_null'获取约束定义。保存输出。 要删除该约束,请执行语句ALTER TABLE SYM\U PLAYER\U STATS DROP constraint SO\U NOT\U NULL。 在原始问题中运行ALTERTABLE语句以更新列定义。 如果需要,可以通过执行ALTER TABLE NYM_PLAYER_STATS ADD constraint SO_NOT_NULL检查来重新创建原始约束,替换为步骤1中的定义。
这是外键SO\u Not\u Null吗?不,没有外键。什么是SO\u Not\u Null?它是表中的一列。SO和SO\u Not\u Null有什么关系?