我应该如何批量插入具有依赖项的MySQL记录?

时间:2013-06-27 16:13:08

标签: mysql jdbc

我有可以拥有“类别”的业务对象,所以我使用的是一个看起来像

的简单表结构
objects:
|  id  |  name  |

categories:
| obj_id | cat |

添加新对象及其类别非常简单:

INSERT INTO OBJECTS (name) VALUES ("This thing");
/* store the LAST_INSERT_ID() */
INSERT INTO categories values (lastId, "A category"), (lastId, "Another category"), ...;

皱纹是,我正在使用JDBC批处理查询来执行对象插入,所以我不确定如何获取last-insert-id。我需要批量插入大量对象,但不知何故保留每个对象的ID,以便我可以批量插入每个对象的相关类别。

我考虑过编写一个存储过程,我可以将类别作为数组(nope,MySQL没有数组类型)或逗号分隔列表(内置字符串标记化的ditto)传递。有没有更简单的方法?像“INSERT INTO ... JOIN ......”这样的东西?

0 个答案:

没有答案