kysely
Version:
Type safe SQL query builder
49 lines (48 loc) • 1.64 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.InsertResult = void 0;
/**
* The result of an insert query.
*
* If the table has an auto incrementing primary key {@link insertId} will hold
* the generated id on dialects that support it. For example PostgreSQL doesn't
* return the id by default and {@link insertId} is undefined. On PostgreSQL you
* need to use {@link ReturningInterface.returning} or {@link ReturningInterface.returningAll}
* to get out the inserted id.
*
* {@link numInsertedOrUpdatedRows} holds the number of (actually) inserted rows.
* On MySQL, updated rows are counted twice when using `on duplicate key update`.
*
* ### Examples
*
* ```ts
* const result = await db
* .insertInto('person')
* .values(person)
* .executeTakeFirst()
*
* console.log(result.insertId)
* ```
*/
class InsertResult {
/**
* The auto incrementing primary key of the inserted row.
*
* This property can be undefined when the query contains an `on conflict`
* clause that makes the query succeed even when nothing gets inserted.
*
* This property is always undefined on dialects like PostgreSQL that
* don't return the inserted id by default. On those dialects you need
* to use the {@link ReturningInterface.returning | returning} method.
*/
insertId;
/**
* Affected rows count.
*/
numInsertedOrUpdatedRows;
constructor(insertId, numInsertedOrUpdatedRows) {
this.insertId = insertId;
this.numInsertedOrUpdatedRows = numInsertedOrUpdatedRows;
}
}
exports.InsertResult = InsertResult;
;