gpt4 book ai didi

mysql - 如何为多个表中的值添加 SQL 约束

转载 作者:行者123 更新时间:2023-11-29 02:13:54 26 4
gpt4 key购买 nike

我正在使用 MySQL。

我有下表

User(UserID, UserTypeID, AccountID)
Account(AccountID, AccountTypeID)
Permission(PermissionID)
UserType(UserTypeID)
AccountType(AccountTypeID)
UserPermission(UserID, PermissionID)
PermissionRule(UserTypeID, AccountTypeID, PermissionID)

是否可以使用 SQL 约束来限制以下内容?将权限插入 UserPermission 表时,该用户的 UserTypeID、该用户帐户的 AccountTypeIDPermissionID 被插入应该出现在 PermissionRule 表中。

感觉这可能更适用于业务规则或过程/触发器,但想知道是否有任何方法可以限制使用我不知道的 SQL 约束。

我正在将 Spring Data 与 Hibernate 结合使用。因此,任何基于 spring 或 hibernate 注释的限制也是有用的。

最佳答案

如果是 Oracle,答案将是使用“Check Constraints”。

MySQL doesn't support检查约束。

The CHECK clause is parsed but ignored by all storage engines. See Section 1.8.2.3, “Foreign Key Differences”.

关于mysql - 如何为多个表中的值添加 SQL 约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44125742/

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