Skip to content

Commit

Permalink
fix: (mysql) get correct increment primary key for mutiple entities i…
Browse files Browse the repository at this point in the history
…nserted

Closes: typeorm#5973
  • Loading branch information
dolsup committed Sep 4, 2020
1 parent aede849 commit 29ee43d
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions src/driver/mysql/MysqlDriver.ts
Expand Up @@ -709,11 +709,13 @@ export class MysqlDriver implements Driver {
/**
* Creates generated map of values generated or returned by database after INSERT query.
*/
createGeneratedMap(metadata: EntityMetadata, insertResult: any) {
createGeneratedMap(metadata: EntityMetadata, insertResult: any, entityIndex: number) {
const generatedMap = metadata.generatedColumns.reduce((map, generatedColumn) => {
let value: any;
if (generatedColumn.generationStrategy === "increment" && insertResult.insertId) {
value = insertResult.insertId;
// When multiple rows is inserted by a single INSERT statement,
// `insertId` is the value generated for the first inserted row only.
value = insertResult.insertId + entityIndex;
// } else if (generatedColumn.generationStrategy === "uuid") {
// console.log("getting db value:", generatedColumn.databaseName);
// value = generatedColumn.getEntityValue(uuidMap);
Expand Down

0 comments on commit 29ee43d

Please sign in to comment.