登录  /  注册
首页 > 数据库 > SQL > 正文

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

coldplay.xixi
发布: 2020-07-03 16:20:48
原创
14787人浏览过

删除表中字段的sql语句有:1、删除没有默认值的列【alter table test drop column bazaartype】;2、删除有默认值的列,【alter table test drop column bazaartype】。

删除表中字段的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)
登录后复制

相关学习推荐:SQL视频教程

以上就是删除表中字段的sql语句有哪些?的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号