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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

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='字段名')    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值