Database design 跨多个表强制执行唯一项

Database design 跨多个表强制执行唯一项,database-design,Database Design,我有一个表结构,有几个0到1的关系 1资源可以有 0到1临时代码 0到1永久代码或0到1商店积分 我正在寻找一种方法来确保在数据库级别,永久代码表和商店信用表中都不能存在条目。它应该会产生一个错误-就像添加了一个重复的密钥一样 有人能想出一个设计来确保这一点吗?还是应该使用存储过程 任何建议都将不胜感激 编辑:澄清一下——我想确保的是,如果我试图在永久代码中插入一个条目并存储积分——这将违反某种数据库规则并产生错误。换言之,两者不可能同时存在。请参见。为什么不对所有内容使用相同的列?将其视为位标

我有一个表结构,有几个0到1的关系

1资源可以有

0到1临时代码 0到1永久代码或0到1商店积分

我正在寻找一种方法来确保在数据库级别,永久代码表和商店信用表中都不能存在条目。它应该会产生一个错误-就像添加了一个重复的密钥一样

有人能想出一个设计来确保这一点吗?还是应该使用存储过程

任何建议都将不胜感激


编辑:澄清一下——我想确保的是,如果我试图在永久代码中插入一个条目并存储积分——这将违反某种数据库规则并产生错误。换言之,两者不可能同时存在。

请参见。为什么不对所有内容使用相同的列?将其视为位标志设置。其中1可以是临时代码,2可以是永久代码,4可以是商店积分。所以b'000等于0,b'100等于商店信用。