你好,亲爱的堆栈溢出社区删除,SQL:删除父当孩子(但理论父)在OneToOne关系
我搜索了很多时间已经,但我无法找到一个解决办法我非常独特的场景。
也许你们可以帮忙。我们假设我们有two tables。
|domain_realm | | password_policy |
|-------------------------------- | | ---------------------------------------|
|id domain password_policy_id | | id min_chars min_numbers min_length |
|1 1 11 | | 11 3 2 |
|2 1 12 | | 12 4 1 |
一个叫domain_realm
,另外一个password_policy
。
这是一对一的关系,因此一个domain_realm
只有一个password_policy
。
现在到了在这种情况下相当独特的案例:
domain_realm
持有password_policy_id
(或多或少FK)而不是password_policy
持有的外键它的父。
Why would someone do this?
Let's assumepassword_policy
is part of a package for many other applications not working with domain realms. Therefore keeping the table clean of any specific rows no other application needs (e.g.fk_domain_relam
) is mandatory.
现在看来是不可能删除domain_realm
时自动删除(ON DELETE CASCADE
)的相关password_policy
。
有没有办法做到这一点的SQL方式或我必须知道这并确保password_policy
被删除在我的代码?
这将是相当讨厌的,因为如果我不得不直接删除数据库中的domain_realm
(调试或支持的原因)我已经创建了一个孤儿,我必须知道这一点。否则,孤儿将永远留在那个分贝中。
非常感谢你,甚至阅读本文。
你问一个问题,关于你的结构不提供结构.. –
说不上你的意思,和/或需要。有一个图形和一个相当准确的解释我的结构。 :-( – sdk
首先,请提供格式化文本,而不是图片,其次,您的链接已损坏;) –