gpt4 book ai didi

具有 2 个值的 MySQL 表约束

转载 作者:行者123 更新时间:2023-11-29 21:28:21 25 4
gpt4 key购买 nike

在我的 MySQL 数据库中,我有一个表存储有关承包商事件的信息:

`task_id` int(11) DEFAULT '0',
`task_date` date DEFAULT NULL,
`contractor_id` int(11) DEFAULT '0'

业务逻辑要求 task_id 的 5 和 6 是互斥的,并且对于任何给定日期,任何给定承包商只能拥有其中的 1 个。是否可以对该表施加一些约束来强制执行此逻辑?

最佳答案

我认为添加约束并不能解决问题。您可以尝试添加 trigger before insert on table并检查是否为 contractor_id您尝试插入,如果是 new.task_id等于 5 或​​者 6 你应该得到这个值和 select如果有任何注册表不符合您的业务指标,请在表中列出,并避免在插入完成之前添加它。我认为this简单的解释将帮助您更进一步。

关于具有 2 个值的 MySQL 表约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35399697/

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