【发布时间】:2014-01-27 02:03:18
【问题描述】:
是否可以创建一个 MySQL 约束来强制同一行中的两列之间的唯一值?
例如:
CREATE TABLE Buddies (
User1 int,
User2 int,
) Type = InnoDB;
我怎么会拒绝...
INSERT INTO MyTable SET User1 = '5', User2 = '5'?
否则那个用户会很孤独:)
编辑:这里的重点是,如果可能的话,我想纯粹在 MySQL 中而不是在应用程序层中执行此操作。
【问题讨论】:
-
在插入之前检查值的触发器。
-
在我链接的问题中 - 你还需要你的列是
NOT NULL以便导致触发器的技巧所依赖的错误。
标签: mysql constraints unique