Возвращает идентификатор вставленного запроса в TypeORM и MySQL - PullRequest
0 голосов
/ 04 мая 2020

Я новичок в TypeORM, и у меня есть проблема, которую я пытаюсь решить. Мне интересно, как получить идентификатор после запроса INSERT. У меня есть столбец @PrimaryGeneratedColumn () с идентификатором в моей сущности, и мой код выглядит примерно так:

await getConnection()
    .createQueryBuilder()
    .insert()
    .into(Test)
    .values([
        { firstName: "test", lastName: "test" }
     ])
    .execute();

Что я хочу заархивировать, так это вернуть идентификатор вставленной строки после выполнения этой функции.

РЕДАКТИРОВАТЬ: я использую MySQL.

Это возможно?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 06 мая 2020

Попробуйте это

let test: Test = [{ firstName: "test", lastName: "test" }];
test = await getRepository(Test).insert(test).generatedMaps[0];
0 голосов
/ 04 мая 2020

Вы можете добавить .returning("your_id_column_name")

await getConnection()
    .createQueryBuilder()
    .insert()
    .into(Test)
    .values([
        { firstName: "test", lastName: "test" }
     ])
    .returning("your_id_column_name")
    .execute();

...