ALTER TABLE 修改表时 因为有一个或多个对象访问此列

修改表时出现,
消息 5074,级别 16,状态 1,第 2 行
对象'DF__DDCZJLB_M__DDCZJ__5BBA8402' 依赖于 列'DDCZJLB_GROUPID'。
消息 4922,级别 16,状态 9,第 2 行
由于一个或多个对象访问此列,ALTER TABLE ALTER COLUMN DDCZJLB_GROUPID 失败。
 
解决方法:
去除约束   方法:
1,右键表名,选择“设计表”
2,进入了表设计窗体后,右键,选择属性,把约束除去。
 
方法二

1.查找出表中该字段的约束名称(或根据已有的提示及对象'DF__******')

declare @name varchar(50)
select  @name =b.name from sysobjects b join syscolumns a on b.id = a.cdefault 
where a.id = object_id('TableName') 
and a.name ='ColumName'

2. 删除存在的约束

exec('alter table TableName drop constraint ' + @name)

3. 再执行修改字段类型的脚本即可。

或者 ,关掉一切使用此表的程序。

如果还不行,可以用

alter   table  ddczjlb   drop   constraint   DF__DDCZJLB_M__DDCZJ__5BBA8402(对象),删除后在执行即可

posted @ 2012-06-04 12:27  园封记忆  阅读(27106)  评论(1编辑  收藏  举报