gpt4 book ai didi

sql-server - 如何识别Sql Server中未命名的约束?

转载 作者:行者123 更新时间:2023-12-02 23:14:52 24 4
gpt4 key购买 nike

动机 - 每当添加未命名的约束时,我都希望让我们的门控 checkin 失败。

我在 Sql Server 中找不到未命名约束的任何专用指定。所以,这取决于模式匹配,我可以在 C# 中完成。

但是模式是什么?最简单的方法是检查“__”,涵盖了大多数情况,但它并不是 100% 可靠。

那么,如何检查约束是否已根据其名称显式命名并具有对 sys 表的完全访问权限?

另一种甚至更好的解决方案是,如果有一种方法可以首先禁用未命名的约束,但仅限于当前 session 。

最佳答案

I could not find any dedicated designation for unnamed constraints in Sql Server

它就在那里。您可以使用以下内容

WITH T
AS (SELECT is_system_named, name, type_desc
FROM sys.check_constraints
UNION ALL
SELECT is_system_named, name, type_desc
FROM sys.default_constraints
UNION ALL
SELECT is_system_named, name, type_desc
FROM sys.key_constraints
UNION ALL
SELECT is_system_named, name, type_desc
FROM sys.foreign_keys)
SELECT name,
type_desc
FROM T
WHERE is_system_named = 'true'

关于sql-server - 如何识别Sql Server中未命名的约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47474589/

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