#1. はじめに
IBM Cloud functionsでは、以下リンクのpackageが標準で利用できるようになっています。
https://cloud.ibm.com/docs/openwhisk?topic=cloud-functions-runtimes#node-js-packages
例えばDb2にアクセスしたい場合にはibm_db
というモジュールが存在するので、これを利用すると簡単にDb2 on CloudなどのDb2環境にアクセスすることができます。この記事ではIBM Cloud functionsの実行言語としてnode.jsを選択しています。python版はこちらです。
https://www.npmjs.com/package/ibm_db
#2. サンプルコード
以下のサンプルコードでは、Db2 on Cloudに対して、select * from SYSIBMADM.SNAPDBM
を実行するコードを記載しています。
サンプルコード
var ibmdb = require('ibm_db');
function main(params) {
var ssldsn = 'DATABASE=xxxxx;HOSTNAME=dashdb-txn-flex-yp-xxxxx.xxxxxx.xxxxx.bluemix.net;PORT=xxxxx;PROTOCOL=TCPIP;UID=xxxxx;PWD=xxxxx;Security=SSL;';
var sql = 'select * from SYSIBMADM.SNAPDBM';
ibmdb.open(ssldsn, function (err,conn) {
if (err) return console.log(err);
conn.query(sql, function (err, data) {
if (err) console.log(err);
else console.log(data);
conn.close(function () {
console.log('connection closed');
});
});
});
};
接続情報であるssldsn
は、DB2 on Cloudの以下のcredential情報から入手することができます。
#3. サンプルコードの利用方法
IBM Cloud functionsで以下のようにアクション
を作成します。


