gpt4 book ai didi

SQL 2000/2005/2008 - 查找列的唯一约束名称

转载 作者:行者123 更新时间:2023-12-04 19:15:50 29 4
gpt4 key购买 nike

我有一个表,其中有一列需要升级数据类型。但是,由于未命名的唯一约束,运行任何更改脚本都会导致错误。

我需要删除此约束,但不幸的是我不知道名称。我有一个脚本,它当前列出了表上的所有唯一约束,但我需要了解如何更进一步并将约束名称与列相关联。

Select *
From sysobjects
Where sysobjects.xtype = 'UQ' AND sysobjects.parent_obj= OBJECT_ID(N'Users')

返回

UQ__Users__45F365D3
UQ__Users__46E78AOC

我需要知道论文链接到哪些列才能删除正确的列。我需要支持 SQL 2000、2005 和 2008。

任何建议将不胜感激。

谢谢本

最佳答案

您应该能够使用 INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE 来确定这一点。

SELECT 
CONSTRAINT_NAME
FROM
INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE
WHERE
TABLE_NAME = 'TableName'
AND COLUMN_NAME = 'ColumnName'

不确定 SQL 2000 是否完全支持该 View 。

关于SQL 2000/2005/2008 - 查找列的唯一约束名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3812165/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com