UNPKG

lupdo

Version:

Database Abstraction Layer for Node js

29 lines (28 loc) 923 B
'use strict'; import PdoStatement from './pdo-statement'; import PdoTransactionPreparedStatement from './pdo-transaction-prepared-statement'; export class PdoTransaction { constructor(connection) { this.connection = connection; this.instances = { preparedStatement: PdoTransactionPreparedStatement, statement: PdoStatement, }; } async commit() { return await this.connection.commit(); } async rollback() { return await this.connection.rollback(); } async exec(sql) { return await this.connection.exec(sql); } async prepare(sql) { return new this.instances.preparedStatement(this.connection, sql, await this.connection.prepare(sql)); } async query(sql) { return new this.instances.statement(this.connection, sql, ...(await this.connection.query(sql))); } } export default PdoTransaction;