Как определить типскриптум / соединение Oracledb npm в формате класса и метода? - PullRequest
0 голосов
/ 19 ноября 2018

Я пытаюсь соединиться с npm Oracledb с использованием машинописи и в формате класса и модуля с использованием машинописи.Например,

Import {Oracledb} from 'oracledb'
class ConnectDAO{

     public ConnectionDB(): connection{
         let connection = Oracledb.getConnection(// connection string);
         Return connection;
     }

     public fetchData(connection): recordset{
          connection.execute('query')
          Return rs;
     }

}

Может кто-нибудь, пожалуйста, помогите решить эту проблему

1 Ответ

0 голосов
/ 09 апреля 2019

Вот полный пример.Просто заполните строку подключения ...

import * as oracledb from 'oracledb';

let testConfig: oracledb.IConnectionAttributes = {
    user: `scott`,
    password: `tiger`,
    connectString: "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=..."
}

class ConnectDAO {
    public async ConnectionDB(): Promise<oracledb.IConnection> {
        return await oracledb.getConnection(testConfig);
    }
    public fetchData(connection: oracledb.IConnection):
        oracledb.IPromise<oracledb.IExecuteReturn> {
        return connection.execute('SELECT CURRENT_TIMESTAMP FROM dual');
    }
}

async function connectAndExecute() {
    let connectDao = new ConnectDAO();
    try {
        let connection = await connectDao.ConnectionDB();
        let results = await connectDao.fetchData(connection);
        console.log(`results : ${JSON.stringify(results, null, 4)}`)
    } catch (err) {
        console.log(`error caught ${err}`);
    }
}

connectAndExecute();
...