如何解决mySQL:三列具有特定值的唯一约束
是否可以在mySQL的三列上创建唯一约束,并在其中一列中创建特定值?
示例: 这是一个在用户(id 1000)及其属性之间具有链接的表
user_id,properties_id,value,active,date_add
1000,1004,"011 23456",1,2020-08-11
1000,1005,"Toyota","Honda",2015-01-01
1000,"BMW",2002-01-01
这些属性定义了列值的含义:
1004 = Telephone number of the user
1005 = Car brand of the user
该用户一生中已经拥有3个汽车品牌,因此有3个条目的属性ID为1005,其中一个处于活动状态,因为这是他当前的汽车。其他的则不活动。
我想创建一个约束,该约束允许user_id,properties_id和active的几种组合,但是仅在active = 0的情况下。一定不能有几个相同的属性都处于活动状态。 (即使用户可以拥有多辆汽车,在此数据模型中,他始终应该只有一辆当前的汽车。)
mySQL可以映射这样的事情吗?
问候马克斯
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。