0

oracledb npm packagenode.js バックエンド API を作成するときに、DB との接続を確立するために使用しています。私はそうすると結果を得ることができますconsole.log(result.rows)

以下は機能コードです

      getDbConnection: function(query) {

            var connectInfo= [EnvConfig.getConnectionHostName(), EnvConfig.getConnectionPort()];   // Array of hostname and port
            var connectHost = connectInfo.join(':');  // join hostname and port with ':'
            var connectionAttr = [connectHost, EnvConfig.getConnectionSID()]; // hostname:port and SID
            var connectString = connectionAttr.join('/'); // creating the connection string like 'hostname:port'
            console.log(connectString);

            // creating a oracle connection
            oracledb.getConnection(
                {
                    user: EnvConfig.getConnectionUserName(),
                    password: EnvConfig.getConnectionPassword(),
                    connectString: connectString
                },
                function (err, connection) {
                    if(err) {
                        console.log(err.message);
                        return;
                    }
                    connection.execute(
                        query, function(err, result) {
                            if(err) {
                                console.log(err.message);
                                return;
                            }
                            console.log(result.rows);   // I get result here
                            return result.rows;   // return result on success
                        }
                    );
                }
            );          
        }

他のファイルから getDbConnection 関数を呼び出し、 console.log() が好きなときに呼び出しますconsole.log(getDbConnection(query))。私は未定義として結果を取得します。どうすればこれを解決できますか。

4

1 に答える 1