【问题标题】:Insert multiple rows with associative entity使用关联实体插入多行
【发布时间】:2019-03-10 18:26:48
【问题描述】:

我正在处理的项目遇到问题。

我有一个与 Node.js 脚本一起使用的 MySQL 数据库(感谢 mysql npm 包)。

我有两个实体,AB,具有多对多关系。在它们之间,有一个关联实体表,名为 Map_A_B​​strong>。 AMap_A_B​​strong> 以及 BMap_A_B​​strong> 之间定义了外键。

这是它的样子:

我面临的问题是当我尝试插入数据(多行)时。因为我正在执行多行的 INSERT,所以我没有每个表的 id 并且无法填充映射表(假设每个 A 包含 100 个 B 的)。

以前,我没有关联实体表,而是在 B 内部有一个外键,可以帮助我存储 Aid,这很容易去做。但是现在,我不能再这样做了。

我之前做过一些研究,使用 JOIN 我可以毫无问题地选择/删除,我只是对这个多行 INSERT 有点迷茫......

你知道如何解决这个问题吗?

【问题讨论】:

    标签: mysql join database-design sql-insert associative-table


    【解决方案1】:

    插入一行后,通过LAST_INSERT_ID()询问其id。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-19
      • 2023-03-22
      相关资源
      最近更新 更多