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

SQL 删除列

SQL 删除列

沧海一幻觉 2019-07-28 16:15:31
怎么样删除一个表中的一列,该列是有默认值的alter table drop column 不行,有默认值,需要删除约束,望高手指点
查看完整描述

5 回答

?
德玛西亚99

TA贡献1770条经验 获得超3个赞

1、打开数据库管理平台软件【SQL Server Management Studio】。

2、连接数据库【连接】。

3、右击表【student】——>【修改】——>右击【学号】这一列【删除列】。

4、点击【新建查询】。

5、在查询窗口编写代码【alter table student drop column 姓名】。

6、刷新查看表【student】已经删除列【姓名】。

 


查看完整回答
反对 回复 2019-07-28
?
动漫人物

TA贡献1815条经验 获得超10个赞

你删除的时候会提示你,有默认约束依赖该字段,那么你需要先删除默认约束(错误提示里会有默认约束名),再删除字段:
ALTER TABLE 表名 DROP CONSTRAINT 默认约束名
GO
ALTER TABLE 表名 DROP COLUMN 字段名
GO



查看完整回答
反对 回复 2019-07-28
?
眼眸繁星

TA贡献1873条经验 获得超9个赞

某表某字段的默认约束:
select name 
from sysobjects 
where id=(select cdefault 
          from syscolumns
          where name='字段名' and id = (select id 
                                                          from sysobjects 
                                                           where name = '表名'))



查看完整回答
反对 回复 2019-07-28
?
阿晨1998

TA贡献2037条经验 获得超6个赞

下面是一个 删除列失败的例子,失败的提示信息中,应该会告诉你是什么约束导致删除失败。
那么后面的语句,是删除约束,然后再删除列。

1> ALTER TABLE test_tab
2> DROP COLUMN user_number;
3> go
消息 5074,级别 16,状态 1,服务器 HOME-BED592453C\SQLEXPRESS,第 1 行
对象'UQ__test_tab__023D5A04' 依赖于 列'user_number'。
消息 4922,级别 16,状态 9,服务器 HOME-BED592453C\SQLEXPRESS,第 1 行
由于一个或多个对象访问此列,ALTER TABLE DROP COLUMN user_number 失败。

1> ALTER TABLE test_tab
2> DROP UQ__test_tab__023D5A04;
3> go

1> ALTER TABLE test_tab
2> DROP COLUMN user_number;
3> go

 



查看完整回答
反对 回复 2019-07-28
?
慕勒3428872

TA贡献1848条经验 获得超6个赞

SQL中怎么删除约束?

在查询分析器里边执行

alter table 表名
drop constraint 约束名

查看表的约束名执行

sp_helpconstraint 表名

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

或者执行
sp_help 表名

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


查看完整回答
反对 回复 2019-07-28
  • 5 回答
  • 0 关注
  • 702 浏览
慕课专栏
更多

添加回答

举报

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