11 sql sql-server sql-server-2008
我有以下内容:
IF OBJECT_ID(N'[dbo].[webpages_Roles_UserProfiles_Target]', 'xxxxx') IS NOT NULL
DROP CONSTRAINT [dbo].[webpages_Roles_UserProfiles_Target]
Run Code Online (Sandbox Code Playgroud)
我希望能够在删除之前检查是否存在约束.我使用上面的代码,表格的类型为'U'.
我怎样才能修改上面的代码(更改xxxx)以检查是否存在约束?
Gay*_*i L 27
SELECT
*
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
Run Code Online (Sandbox Code Playgroud)
或者尝试这个
SELECT OBJECT_NAME(OBJECT_ID) AS NameofConstraint,
SCHEMA_NAME(schema_id) AS SchemaName,
OBJECT_NAME(parent_object_id) AS TableName,
type_desc AS ConstraintType
FROM sys.objects
WHERE type_desc LIKE '%CONSTRAINT'
Run Code Online (Sandbox Code Playgroud)
要么
IF EXISTS(SELECT 1 FROM sys.foreign_keys WHERE parent_object_id = OBJECT_ID(N'dbo.TableName'))
BEGIN
ALTER TABLE TableName DROP CONSTRAINT CONSTRAINTNAME
END
Run Code Online (Sandbox Code Playgroud)
尝试这样的事情
IF OBJECTPROPERTY(OBJECT_ID('constraint_name'), 'IsConstraint') = 1
ALTER TABLE table_name DROP CONSTRAINT constraint_name
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
51024 次 |
| 最近记录: |