SQLServer判断指定列的默认值是否存在,并修改默认值

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: 原文:SQLServer判断指定列的默认值是否存在,并修改默认值 SQLServer判断指定列的默认值是否存在,并修改默认值 2008年10月21日 星期二 下午 12:08 if exists(select A.

原文:SQLServer判断指定列的默认值是否存在,并修改默认值

SQLServer判断指定列的默认值是否存在,并修改默认值
2008年10月21日 星期二 下午 12:08
if exists(select A.name as DefaultName,B.name as TableName from sysobjects A inner join sysobjects B on A.parent_obj = B.id where A.xtype = 'D' and B.xtype = 'U' and B.name = 'test')

--在SQLserver中判断指定列的默认值是否存在
alter table test drop constraint trade_default

--因为不能直接修改默认值所以先删除默认值约束
go 
alter table test add constraint trade_default default -1 for pid with values

--重新添加新约束,并指定默认值
go

--如果字段原来无默认值,直接执行如下语句,添加默认值: 
alter table 表名 add default(1) for 字段名 

--如果原来有默认值,现在要更改默认值,则需要先把原来的默认值drop掉,再添加新的默认值 
alter table 表名 drop constraint 默认值约束的名称 

--如果不知道默认值约束的名称,用如下语句查询得到: 
select [name] 
from sysobjects t 
where id = (select cdefault from syscolumns where id = object_id(N'表名') 
and name='字段名')     

  

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
Sql Server 增加字段、修改字段、修改类型、修改默认值
Sql Server 增加字段、修改字段、修改类型、修改默认值
506 0
|
存储 Oracle 关系型数据库
MySQL数据库: 添加列、修改列、删除列、修改列属性、修改表名(包括MySQL、SQLServer、Oracle)
MySQL数据库: 添加列、修改列、删除列、修改列属性、修改表名(包括MySQL、SQLServer、Oracle)
446 0
MySQL数据库: 添加列、修改列、删除列、修改列属性、修改表名(包括MySQL、SQLServer、Oracle)
|
SQL
在Sql Server中使用Guid类型的列及设置Guid类型的默认值
原文:在Sql Server中使用Guid类型的列及设置Guid类型的默认值 1.列的类型为uniqueidentifier 2.列的默认值可以设为newid(),列类型也可以为 varchar 3.
2020 0
Sql Server 增加字段、修改字段、修改类型、修改默认值
Sql Server 增加字段、修改字段、修改类型、修改默认值
375 0
|
SQL
Sql Server 增加字段、修改字段、修改类型、修改默认值
原文:Sql Server 增加字段、修改字段、修改类型、修改默认值 1、修改字段名:   alter table 表名 rename column A to B 2、修改字段类型:   alter table 表名 alter column 字段名 type not null 3、修改字段...
7672 0
|
Go 索引 SQL
SqlServer基础--Select *与Select 指定列的区别
SqlServer基础--Select *与Select 指定列的区别
6693 0
|
移动开发 数据库 Android开发
SQLServer之列数据转换为行数据
SQLServer之列数据转换为行数据UNPIVOT特点UNPIVOT运算符通过将列旋转到行来执行PIVOT的反向操作,UNPIVOT 并不完全是 PIVOT 的逆操作。 PIVOT 执行聚合,并将多个可能的行合并为输出中的一行。
1415 0
SQLServer中查询的数字列前面补0返回指定长度的字符串
原文:SQLServer中查询的数字列前面补0返回指定长度的字符串 SQLServer中查询的数字列前面补0返回指定长度的字符串:   如:   角本如下: /****** Script for SelectTopNRows command from SSMS ******/ SE...
2963 0
|
SQL Go 数据库
SQL Server 自定义函数(Function)——参数默认值
原文:SQL Server 自定义函数(Function)——参数默认值 sql server 自定义函数分为三种类型:标量函数(Scalar Function)、内嵌表值函数(Inline Function)、多声明表值函数(Multi-Statement Function) 标量函数:标量函数是对单一值操作,返回单一值。
1974 0