SqlServer禁用启用触发器、外键约束

--禁用指定名称触发器
ALTER TABLE tbname DISABLE TRIGGER trigname

--恢复指定名称触发器
ALTER TABLE tbname ENABLE TRIGGER trigname

--禁用某个表上的所有触发器
ALTER TABLE tbname DISABLE TRIGGER all

--启用某个表上的所有触发器
ALTER TABLE tbname ENABLE TRIGGER all

--禁用所有表上的所有触发器exec sp_msforeachtable ‘ALTER TABLE ? DISABLE TRIGGER all‘

--启用所有表上的所有触发器exec sp_msforeachtable ‘ALTER TABLE ? enable TRIGGER all‘
--添加主键
alter table tbname add constraint pk_name primary key(column1,column2)
--添加非聚集主键
alter table tbname add constraint pk_name primary key NONCLUSTERED(column1,column2)
--删除主键
alter table tbname drop constraint pk_name
--添加外键
alter table tbname add constraint fk_name foreign key (fk_column) references pk_tbname(pk_column)
--删除外键
alter table tbname drop constraint fk_name

--启用or禁用指定表所有外键约束
alter table tbname  NOCHECK constraint all
alter table tbname  CHECK constraint all

--查看约束
select name , is_disabled from sys.foreign_keys order by name

--添加唯一约束
  alter table tbname add constraint uq_colname unique (colname)

时间: 2024-12-16 08:50:18

SqlServer禁用启用触发器、外键约束的相关文章

oracle查看禁用/启用/删除外键约束sql

1.查看禁用外键sql select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='R'; 2.查看启用外键sql select 'alter table '||table_name||' enable constraint '||constraint_name||';' from user_constrai

SQL Server 临时禁用和启用所有外键约束

--获得禁用所有外键约束的语句 select 'ALTER TABLE [' + b.name + '] NOCHECK CONSTRAINT ' + a.name +';' as 禁用约束 from sysobjects a ,sysobjects b where a.xtype ='f' and a.parent_obj = b.id --获得启用所有外键约束的语句 select 'ALTER TABLE [' + b.name + '] CHECK CONSTRAINT ' + a.nam

sqlserver查看所有的外键约束

1 select 2 a.name as 约束名, 3 object_name(b.parent_object_id) as 外键表, 4 d.name as 外键列, 5 object_name(b.referenced_object_id) as 主健表, 6 c.name as 主键列 7 from sys.foreign_keys A 8 inner join sys.foreign_key_columns B on A.object_id=b.constraint_object_id

SQLServer禁用、启用外键约束

---启用or禁用指定表所有外键约束 alter table PUB_STRU NOCHECK constraint all; alter table PUB_STRU CHECK constraint all; ---生成启用or禁用指定表外键约束的sql select 'ALTER TABLE ' + b.name + ' NOCHECK CONSTRAINT ' + a.name +';' from sysobjects a ,sysobjects b where a.xtype ='f'

oracle 删除外键约束 禁用约束 启用约束

oracle 删除外键约束 禁用约束 启用约束 执行以下sql生成的语句即可 删除所有外键约束 Sql代码 select 'alter table '||table_name||' drop constraint '||constraint_name||';' from user_constraints where constraint_type='R' 禁用所有外键约束 Sql代码 select 'alter table '||table_name||' disable constraint

未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值。

来源:http://www.cnblogs.com/JuneZhang/archive/2013/01/10/2853981.html 今天运行项目,提示“未能启用约束.一行或多行中包含违反非空.唯一或外键约束的值.”的异常信息. 在网上找了查了一些原因:http://www.cnblogs.com/muzihai1988/archive/2011/05/04/2036502.html 原因分析:强类型的DataTable和SQL语句查询出的结果不匹配. 简单说就是强类型的DataTable比S

SQLServer 删除所有表的外键约束

DECLARE c1 cursor for select 'alter table ['+ object_name(parent_obj) + '] drop constraint ['+name+']; ' from sysobjects where xtype = 'F'open c1declare @c1 varchar(8000)fetch next from c1 into @c1while(@@fetch_status=0) begin exec(@c1) fetch next fr

mysql关闭/启用外键约束

1.有时为了导入数据方便,需要临时关闭外键约束mysql>SET FOREIGN_KEY_CHECKS=0; 2.打开外键约束mysql>SET FOREIGN_KEY_CHECKS=1; 3.查看FOREIGN_KEY_CHECKS变量mysql>select @@FOREIGN_KEY_CHECKS; =-=-=-=-=Powered by Blogilo

如何删除有外键约束的数据

SQLServer 2012 表TableA与TbaleB有外键约束,约束列名为TbaleB的iTableAID列,删除的时候会提示 DELETE  dbo.TableA 消息 547,级别 16,状态 0,第 1 行 DELETE 语句与 REFERENCE 约束"FK_TbaleB_TableA_iTableAID"冲突.该冲突发生于数据库"TEST",表"dbo.TbaleB", column 'iTableAID'. 语句已终止. 此时需