C# 如何编写删除和更改唯一列的查询

C# 如何编写删除和更改唯一列的查询,c#,sql,C#,Sql,我的场景..我正在使用SqlCompactServer版本。我正在创建表 创建表SSr(名称nvarchar(400),id int unique)。我需要更改表,将名称设为unique列,并从现有列中删除unique。如何实现此目的。使用sp\u help识别旧的唯一或主键约束名称。然后按名称删除它,然后再添加新的唯一约束 EXEC sp_help 'SSr' ALTER TABLE [SSr] DROP CONSTRAINT [UQ_SSr_Id] ALTER TABLE [SSr] ADD

我的场景..我正在使用SqlCompactServer版本。我正在创建表
创建表SSr(名称nvarchar(400),id int unique)。我需要更改表,将名称设为unique列,并从现有列中删除unique。如何实现此目的。

使用
sp\u help
识别旧的唯一或主键约束名称。然后按名称删除它,然后再添加新的唯一约束

EXEC sp_help 'SSr'
ALTER TABLE [SSr] DROP CONSTRAINT [UQ_SSr_Id]
ALTER TABLE [SSr] ADD CONSTRAINT [UQ_SSr_Name] UNIQUE ([Name])
您还可以查询信息架构以识别主键和唯一约束:

select CONSTRAINT_NAME, CONSTRAINT_TYPE
from INFORMATION_SCHEMA.TABLE_CONSTRAINTS
where CONSTRAINT_TYPE in ('PRIMARY KEY', 'UNIQUE')
and TABLE_SCHEMA = 'dbo'
and TABLE_NAME = 'SSr'

如何检查列中是否存在唯一约束。是否有任何方法。提前感谢。