alter 修改表字段的默认值问题。!!!!
我想修改一个表的默认值,下面的SQL提示出错。
ALTER TABLE [dbo].[Employee] ALTER COLUMN cID char(10) SET Default '22 ' NOT NULL
出错信息为:
服务器: 消息 156,级别 15,状态 1,行 1
Incorrect syntax near the keyword 'Default '.
请问是什么原因。怎么样才能修改表字段的默认值
[解决办法]
--如果知道默认值的约束名,按如下:
alter table 表名 drop constraint 约束名
--如果不知道默认值约束的名称,需要用SQL来取得:
declare @csname varchar(100)
set @csname= ' '
select @csname=[name] --约束名称
from sysobjects t
where id=(select cdefault from syscolumns where id=object_id(N '表名 ') and name= '字段名 ')
--动态删掉约束
exec( 'alter table 表名 drop constraint '+@csname)