sql server 查找字段上的约束

1.  当字段没有默认值或者约束的时候可以使用:

    alter table [table_name] drop column [column_name] 来删除。

    当有默认值的时候应该先删除默认值,然后再删除此列,不然会报错。具体方法如下

    select
b.name from sysobjects b join syscolumns a on b.id = a.cdefault where a.id = object_id('表名') and a.name = '列名'”;

    ALTER TABLE Recording DROP constraint 约束名

     ALTER TABLE 表名 DROP COLUMN 列名

示例:如下为删除数据库
[MusicStore]中AlbumModels表的Price列约束
use [MusicStore];--数据库名
declare @tableName nvarchar(100);--表名
declare @columnName nvarchar(100);--列名
declare @cnt nvarchar(100);
declare @sqlcmd nvarchar(1024);
set @tableName='AlbumModels'
set @columnName='Price'
select @cnt= b.name from sysobjects b join syscolumns a on b.id = a.cdefault where a.id = object_id(@tableName) and a.name = @columnName
set @sqlcmd = 'ALTER TABLE '+ @tableName +' DROP constraint ' + @cnt;
exec sp_executesql @sqlcmd

 



2.  在sqlserver中如何增加一个字段

    ALTER TABLE 表名 ADD 字段名称字段类型 Default 默认值




 

posted @ 2015-03-10 10:37  Freshcoder  阅读(3913)  评论(1编辑  收藏  举报