首页 > 解决方案 > 如何自动向 JOIN 表插入新值?

问题描述

我对 SQL 是半新的,但据我所知,可以使用触发器解决以下场景,我只是不确定如何。

我创建了一个users_to_branches表。这是一个 JOIN 表 -users.idusers.nameusers和表中branch.name获取branches。表是在branch_ID这两个usersbranches表上连接的。

现在,users_to_branches即使新记录被插入到users表中,也不会更新。是否可以使用触发器进行设置,因此users.id,users.namebranch.name将自动作为新记录插入到 中users_to_branches

标签: mysqlsqldatabase

解决方案


user_to_branches如果要使用名称而不是 id插入行,可以使用查询:

insert into user_to_branches (user_id, branch_id)
    select u.user_id, b.branch_id
    from users u join
         branches b
         on u.name = ? and b.name = ?;

推荐阅读