修改MsSql有默認值約束列類型

复制代码
DROP TABLE TMP
CREATE TABLE TMP
(
    ID 
INT,
    TEST  
VARCHAR(10DEFAULT ''
)
GO
INSERT INTO TMP(ID) SELECT 1 UNION SELECT 2 UNION SELECT 3 
INSERT INTO TMP(ID, TEST) SELECT 4'AB'  UNION SELECT 5'CD'
GO
DECLARE @ConstraintName varchar(200)
DECLARE @SQLSTR        varchar(2000)

SELECT    @ConstraintName=OBJECT_NAME(constid) FROM syscolumns AS A LEFT JOIN sysCONSTRAINTs AS B
ON A.ID=B.ID AND A.colid=B.colid
--WHERE    object_name(a.id)= '表名 'and   a.name= '列名' 
WHERE    object_name(a.id)= 'TMP 'and   a.name= 'TEST' 

SET @SQLSTR='ALTER TABLE TMP DROP CONSTRAINT '+@ConstraintName
EXEC(@SQLSTR)

GO
UPDATE TMP SET TEST=NULL
ALTER TABLE TMP ALTER COLUMN TEST INT
复制代码

 

 

posted @   天际翔龙  阅读(691)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示