【问题标题】:mysql - replace value with foreign key automatically on insertmysql - 在插入时自动用外键替换值
【发布时间】:2013-12-13 17:38:59
【问题描述】:

我试图在插入时自动用其外键(来自另一个表)替换一个值。 我知道最好的方法可能是在插入时创建一个触发器,这是我第一次使用触发。

示例: Fam_table

ID (Key) Family
1        Jordan
2        White

insert into Full_table values ('Adam','white');

我希望将“White”替换为 2 ...

【问题讨论】:

    标签: mysql triggers insert foreign-keys


    【解决方案1】:

    你可以在没有这样的触发器的情况下做到这一点

    INSERT INTO full_table
    SELECT 'Adam', id
      FROM fam_table
     WHERE family = 'White'
     LIMIT 1
    

    这里是SQLFiddle演示

    【讨论】:

    • 工作谢谢!!...我的例子有点简单。你有没有机会描述如何使用触发器来做到这一点?
    • 不客气 :) 如果这是您要找的东西,请考虑到 accept 回答。
    • 现在你不能用触发器真正做到这一点,因为在这种情况下你必须使用 VARCHAR 数据类型作为 full_table 中的 family 列,这本身就是无稽之谈并且不允许您使用外键约束。
    猜你喜欢
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    • 1970-01-01
    • 2011-01-02
    • 2013-02-28
    • 2020-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多