删除SQL约束的方法

数据库 SQL Server
在SQL数据库中,如果需要删除表约束,应该如何操作呢?下面就将为您介绍删除SQL表约束的方法,供您参考,希望对您有所帮助。

SQL数据库中,如果需要删除表约束,应该如何操作呢?下面就将为您介绍删除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
--为字段添加新默认值和约束
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'))

 

 

【编辑推荐】

SQL中用于删除记录的DELETE语句

教您如何彻底删除SQL Server注册表

SQL语句中布尔表达式不可忽视的部分

自动生成INSERT语句的SQL存储过程

SQL语句中的SELECT DISTINCT

 

责任编辑:段燃 来源: 互联网
相关推荐

2010-09-03 13:51:10

SQL删除约束

2010-09-08 13:21:19

SQL删除约束

2010-09-01 17:13:07

SQL删除约束

2010-10-22 17:26:55

SQL Server删

2010-09-25 13:16:51

SQL Server外

2010-11-12 15:28:59

sql server默

2010-11-10 11:37:29

SQL Server删

2010-10-19 16:34:10

SqlServer唯一

2010-11-12 14:45:19

Sql Server唯

2010-09-25 11:50:47

sql server外

2011-03-22 12:59:18

SQLOracle外键约束

2010-11-12 15:19:06

Sql Server外

2010-09-02 10:53:21

SQL删除

2010-11-10 11:54:32

SQL SERVER删

2010-10-20 10:19:33

sql server删

2010-11-10 13:03:15

SQL Server存

2010-11-12 15:04:30

SQL Server缺

2010-09-24 17:08:03

SQL Server唯

2010-09-25 11:32:20

SQL主键约束

2010-11-10 11:51:04

SQL SERVER级
点赞
收藏

51CTO技术栈公众号