数据库中删除表中字段的sql语句有哪些
这篇文章主要介绍数据库中删除表中字段的sql语句有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
删除表中字段的sql语句有:1、删除没有默认值的列【alter table Test drop COLUMN BazaarType】;2、删除有默认值的列,【alter table Test DROP COLUMN BazaarType】。
删除表中字段的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语句有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341