这似乎是一个理想的功能,但我似乎无法弄清楚当外键是主键(复合键)的一部分时我会怎么做。
该表是一个简单的联结表,用于多对多关系引用User.id
和Access.id
用户有权访问的引用函数:
Column | References
user user.id
access access.id
因此,每个用户和每个访问级别都可以有许多条目。为了简化“超级用户”的操作,我希望有一个NULL
值,access
这意味着他们可以访问每个页面(这是我能弄清楚如何输入未引用access
表中行的值的唯一方法)。问题是 MySQL 不允许将NULL
值作为主键的一部分。
是否有解决NULL
主键问题的方法,或者是否有另一种方法可以引用外键中的每一行(或无行)?我能想到的唯一其他方法是禁用外键或必须为表中的每个 access.id 添加一行。其中任何一种都是不可取的。