如何在 class 和方法格式中定义 typescript/Oracledb npm 连接?

How to define typescript/Oracledb npm connection in class and method format?

我正在尝试使用 typescript 以 class 的格式连接 npm Oracledb,并使用 typescript 连接模块。例如,

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;
     }

}

任何人都可以帮助解决这个问题

这是一个完整的例子。只需填写您的连接字符串...

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();