Я пытаюсь реализовать соединение с оракулом, используя модуль класса Typescript ES6.
Я установил пакет @types/oracledb, а также пакет oracledb. Используется фреймворк Jasmin.
Ниже приведен мой код, который я реализовал.
import * as oracledb from 'oracledb';
export class ConnectionDAO{
/**
* Connection Variable Declaration
*/
conn;
/**
* Result Variable Declaration
*/
result;
/**
*
* Creates an instance of CommercialDAO.
* To Initiate Connection and Make the connection utilized by @memberof CommercialDAO
* @memberof CommercialDAO
*/
constructor() {
this.conn = oracledb.getConnection({
user: "commercial",
password: "oracle",
connectString: "localhost/COMMERCIALDB"
});
}
public getRwCnt() {
return new Promise(async function(resolve, reject) {
try {
let result = this.conn.execute('SELECT TESTCASEID FROM EXECUTE_TESTCASE');
resolve(this.result.rows.length);
} catch (err) { // catches errors in getConnection and the query
reject(err);
}
this.conn.release();
});
}
}
Ошибка:
TypeError: this.conn.execute is not a function
Но в этом коде само соединение не сохраняется в переменной this.conn.
есть ли способ избежать обещаний и асинхронной функции? Есть ли другое решение для достижения этого? Пожалуйста, предоставьте вам ценное решение и предложения. Ожидается образец фрагмента.