ts-sql-query
Version:
Type-safe SQL query builder like QueryDSL or JOOQ in Java or Linq in .Net for TypeScript with MariaDB, MySql, Oracle, PostgreSql, Sqlite and SqlServer support.
101 lines (100 loc) • 3.74 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.AbstractNoopDBConnection = void 0;
const AbstractAdvancedConnection_1 = require("./AbstractAdvancedConnection");
const ChainedQueryRunner_1 = require("../queryRunners/ChainedQueryRunner");
class AbstractNoopDBConnection extends AbstractAdvancedConnection_1.AbstractAdvancedConnection {
constructor(queryRunner, sqlBuilder) {
super(new NoopIterceptQueryRunner(queryRunner), sqlBuilder);
queryRunner.useDatabase('noopDB');
}
get lastQuery() {
return this.queryRunner.lastQuery;
}
get lastParams() {
return this.queryRunner.lastParams;
}
}
exports.AbstractNoopDBConnection = AbstractNoopDBConnection;
class NoopIterceptQueryRunner extends ChainedQueryRunner_1.ChainedQueryRunner {
constructor() {
super(...arguments);
this.lastQuery = '';
this.lastParams = [];
}
executeSelectOneRow(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeSelectOneRow(query, params);
}
executeSelectManyRows(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeSelectManyRows(query, params);
}
executeSelectOneColumnOneRow(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeSelectOneColumnOneRow(query, params);
}
executeSelectOneColumnManyRows(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeSelectOneColumnManyRows(query, params);
}
executeInsert(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeInsert(query, params);
}
executeInsertReturningLastInsertedId(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeInsertReturningLastInsertedId(query, params);
}
executeInsertReturningMultipleLastInsertedId(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeInsertReturningMultipleLastInsertedId(query, params);
}
executeUpdate(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeUpdate(query, params);
}
executeDelete(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeDelete(query, params);
}
executeProcedure(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeProcedure(query, params);
}
executeFunction(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeFunction(query, params);
}
executeBeginTransaction() {
this.lastQuery = 'begin transaction';
this.lastParams = [];
return this.queryRunner.executeBeginTransaction();
}
executeCommit() {
this.lastQuery = 'commit';
this.lastParams = [];
return this.queryRunner.executeCommit();
}
executeRollback() {
this.lastQuery = 'rollback';
this.lastParams = [];
return this.queryRunner.executeRollback();
}
executeDatabaseSchemaModification(query, params = []) {
this.lastQuery = query;
this.lastParams = params;
return this.queryRunner.executeDatabaseSchemaModification(query, params);
}
}