为了账号安全,请及时绑定邮箱和手机立即绑定

如何用SQL语句删除check约束

如何用SQL语句删除check约束

潇潇雨雨 2019-04-08 08:04:51
创建时的语句如下:create table student2(Sno char(9) primary key,Sname char(8) not null,Ssex char(2) check(Ssex in ('男','女')),Sage smallint,Sdept char(20))lsg0012的方法没有效果啊, 齐齐飞飞和an1ju能不能再介绍得清楚点呢?因为我的check那里没有约束名啊!
查看完整描述

4 回答

?
回首忆惘然

TA贡献1847条经验 获得超11个赞

在查询分析器里边执行

alter table 表名
drop constraint 约束名

查看表的约束名执行

sp_helpconstraint 表名

第二个结果集就列出了表的约束,constraint_name就是约束名

或者执行
sp_help 表名

一般第三个结果集中constraint_name就表示相应的约束名。

查看完整回答
反对 回复 2019-04-09
?
森栏

TA贡献1810条经验 获得超5个赞

这里我给一个方法
注意一个前提,要删除约束,必须要知道它的约束名
首先你这里的CHECK没有约束名,这表示系统会自动给你生成一个约束名,所以你首先要查找这个约束名,可以用
sp_help student2
这个语句可以查看student2 表的所有属性,当然也包括约束名
然后就可以执行删除操作了
Alter table student2
drop constraint (约束名)

 


查看完整回答
反对 回复 2019-04-09
?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

删除约束的语法如下:

Alter Table 表名
Drop Constraint 约束名
附加:在创建表的时候同时添加约束的写法:

use stuDB
go
if exists(select * from Sysobjects where name = 'stuInfo')
drop table stuInfo
go
create table stuInfo
(
stuName varchar(20) not null primary key(stuName)
,stuID int not null unique(stuID)
,stuAddress varchar(20) not null default('地址不详')
,stuAge int not null check(stuAge between 15 and 40)
)


查看完整回答
反对 回复 2019-04-09
  • 4 回答
  • 0 关注
  • 2527 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信