【问题标题】:Insert mysql on foreign key id php在外键id php上插入mysql
【发布时间】:2018-06-11 10:26:45
【问题描述】:

我有 2 张桌子、俱乐部和固定装置

俱乐部

id (int)
name (text)

夹具

id (int)
hometeam (int, foreign key to clubs id)
awayteam (int, foreign key to clubs id)
datetime (datetime)

根据外键关系,每个灯具记录都使用 hometeamawayteam 的 ID。

我需要插入fixtures 表,但我只有hometeam 名称而不是hometeam id。有没有办法通过外键关系做到这一点,而不必单独查找相关的id号?

【问题讨论】:

  • 简单的答案是否定的。

标签: php mysql insert foreign-keys


【解决方案1】:

通过单独的select查询查找外键值没有错:

INSERT INTO `fixtures`
    VALUES ( NULL,
             (SELECT `id` FROM `clubs` WHERE `name` = 'NAME'),
             AWAYTEAM_ID,
             CURRENT_TIMESTAMP
    );

【讨论】:

    【解决方案2】:

    您需要分两步完成:

    • 在 clubs 表中插入 hometeam(如果已经有 hometeamID,则获取 hometeamID,否则插入并获取 ID)
    • 然后插入夹具表中

    【讨论】:

    • 对不起,我想你可能在这里误解了我的问题。我已经在带有 ID 的俱乐部表中拥有所有俱乐部。我想知道是否可以将俱乐部名称而不是俱乐部 ID 插入到灯具表中,或者我是否必须查找俱乐部 ID 才能进行插入。我可以通过外键从 id 中获取俱乐部名称,所以希望我可以反过来
    • 嗯,好的,那么您可以从中获得帮助。 stackoverflow.com/questions/34868694/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-28
    • 1970-01-01
    • 1970-01-01
    • 2012-09-17
    • 2021-12-31
    • 2016-10-09
    • 1970-01-01
    相关资源
    最近更新 更多