创建与删除SQL约束或字段约束
1)禁止所有表约束的SQL select 'alter table '+name+' nocheck constraint all' from sysobjects where type='U' 2)删除所有表数据的SQL select 'TRUNCATE TABLE '+name from sysobjects where type='U' 3)恢复所有表约束的SQL select 'alter table '+name+' check constraint all' from sysobjects where type='U' 4)删除某字段的约束 declare @name varchar(100) --DF为约束名称前缀 select @name=b.name from syscolumns a,sysobjects b where a.id=object_id('表名') and b.id=a.cdefault and a.name='字段名' and b.name like 'DF%' --删除约束 'alter table 表名 drop constraint' @name --出现问题,不知为何 exec('alter table 表名 drop constraint'+ @name) --为字段添加新默认值和约束 ALTER TABLE 表名 ADD CONSTRAINT @name DEFAULT (0) FOR [字段名] --删除约束
ALTER TABLE tablename Drop CONSTRAINT 约束名
--修改表中已经存在的列的属性(不包括约束,但可以为主键或递增或唯一)
ALTER TABLE tablename alter column 列名 int not null
--添加列的约束
ALTER TABLE tablename ADD CONSTRAINT DF_tablename_列名 DEFAULT(0) FOR 列名
--添加范围约束 alter table tablename add check(性别 in ('M','F'))