2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

IBM Cloud functions(node.js)からDB2 on Cloudへ接続する方法

Last updated at Posted at 2019-11-26

#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情報から入手することができます。
image.png

#3. サンプルコードの利用方法

IBM Cloud functionsで以下のようにアクションを作成します。

image.png image.png image.png

コードを貼り付けて、Invokeで実行すると、右画面に結果が出力されます。
image.png

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?