您现在的位置是:群英 > 数据库 > 关系型数据库
数据库中删除表字段怎么做,要注意什么问题
Admin发表于 2022-06-18 17:14:293264 次浏览
这篇文章给大家介绍了“数据库中删除表字段怎么做,要注意什么问题”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“数据库中删除表字段怎么做,要注意什么问题”有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。

删除表字段的sql语句有哪些?

删除表字段的sql语句有:

1.删除没有默认值的列:

alter table Test drop COLUMN BazaarType

2.删除有默认值的列:

先删除约束(默认值)alter table Test DROP CONSTRAINT DF__Test__BazaarType__3C4ACB5F

(alter table Test DROP COLUMN BazaarType 提示报错就是 DF__SheetTest__Attac__0F8D3381)

然后在删除列 alter table Test DROP COLUMN BazaarType

3.

ALTER TABLE 表名 ADD 字段名 INT  DEFAULT (0) NOT NULL;

修改主键字段类型

alter table [tablename] alter column [colname] [newDataType])

修改某表的字段类型时,会报错是因为存在约束。

a。 将表中的字段设置为NOT NULL(不为空)、给字段增加Default值(默认值)这样的操作都会给该字段添加约束,增加了这些约束后,在用SQL脚本修改字段类型、删除字段的时候均会发生类似错误.

b.查找该字段上已存在的约束,并删除存在的约束.

c.再次执行修改/删除脚本即可。

解决方法:

1.查找出表中该字段的约束名称(或根据已有的提示及对象'DF__******')

declare @name varchar(50)
select  @name =b.name from sysobjects b join syscolumns a on b.id = a.cdefault 
where a.id = object_id('TableName') 
and a.name ='ColumName'

2. 删除存在的约束

exec('alter table TableName drop constraint ' + @name)

例如:exec('alter table T_tableName drop constraint 报错信息的约束名' )

3. 再执行修改字段类型的脚本即可

alter table dbo.T_tableName alter column Id BIGINT not NULL
alter table dbo.T_tableName add constraint PK_Id primary key(Id)

以上就是关于数据库中删除表字段怎么做,要注意什么问题的介绍,本文内容仅供参考,有需要的朋友可以借鉴了解看看,希望对大家学习或工作,想要了解更多欢迎关注群英网络,小编每天都会为大家更新不同的知识。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: 删除表字段
相关信息推荐
2022-07-12 17:50:37 
摘要:这篇文章主要介绍了Oracle PL/SQL异常处理方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
2022-05-12 14:19:26 
摘要:本篇文章给大家带来了关于Oracle的相关知识,其中主要介绍了关于using关键字的相关知识,可以使用using关键字来简化连接查询,希望对大家有帮助。
2021-11-22 17:53:27 
摘要:这篇文章给大家分享的是MySQL的常用命令。小编觉得挺实用的,因此分享给大家做个参考,文中介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部