补充,在sqlserver 中 使用脚本,alter table VerifyCode DROP COLUMN IfHandSign
删除表中的字段“IfHandSign”失败。
错误是:
消息 5074,级别 16,状态 1,第 1 行
对象'DF__VerifyCod__IfHan__173876EA' 依赖于 列'IfHandSign'。
消息 4922,级别 16,状态 9,第 1 行
由于一个或多个对象访问此列,ALTER TABLE DROP COLUMN IfHandSign 失败。
网上查询过说是因为有了约束,要先删除约束,想问原因?
是有约束,得先删除约束才能删除字段
ALTER TABLE [dbo].[VerifyCode] DROP CONSTRAINT [DF__VerifyCod__IfHan__173876EA]
是用如下的sql增加这一列的,怎么添加了约束呢
--增加一列
if not exists
(select * from syscolumns where id=object_id('VerifyCode') and name='IfHandSign')
begin
alter table VerifyCode add IfHandSign INT DEFAULT 0
END
@人在江湖博客: 请注意 DEFAULT 就是添加的约束。
IfHandSign 是某个表的外键,当然要先删除约束咯。
删了'DF__VerifyCod__IfHan__173876EA表的外键就行。
不是外键