如何从mysql中的单个列引用2列

时间:2017-02-20 10:20:21

标签: mysql foreign-keys

我有3张桌子 1.用户{id,name,mobile}
2. Temp_User {id,name,mobile}
3. In_Out {id,intime,outtime}

现在我想在id中将In_Out作为外键,它应该引用User.id以及Temp_User.id。也就是说,id值必须出现在UserTemp_User中。

在mysql中可以吗? 如果有人知道,请给我ALTER表格的In_Out命令。我已经创建了这个表。 任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:2)

考虑在User表中添加一个标志,指示用户是否是临时用户:

alter table user add is_temp tinyint unsigned default 0 not null;

这将允许来自In_Out的简单外键引用:

alter table In_Out 
    change id User_id <Match Data Type And Nullness Here>,
    add constraint User_id_fk foreign key (User_id) references User(id);