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

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM