LoginSignup
0
2

More than 5 years have passed since last update.

node-jt400を試してみた(SQL query)

Posted at

node-jt400のコーディング例はここに書いてありますので、それに沿ってテストしてみます。

SQL query

SQLquery.js
var jt400 = require("node-jt400");
var express = require("express");
var app = express();

var pool = jt400.pool({ host: '192.168.X.XXX', user: 'MYUSER', password: 'MYPASS' });

var server = app.listen(8888, function () {
    console.log("curl http://localhost:" + server.address().port + '/~');
});

app.get("/query", function (req, res, next) {
    let stmt = "select * from member";
    let members = [];
    pool.query(stmt).then(
        function (result) {
            var id, lname, fname, prof, tokuten;
            for (var i = 0; i < result.length; i++) {
                id = result[i].ID;
                lname = result[i].LNAME;
                fname = result[i].FNAME;
                prof = result[i].PROF;
                tokuten = result[i].TOKUTEN;
                members.push(id + lname + fname + prof + tokuten);
            }
            res.send(members);
        }
    )
});

パラメータ無し、単純に全件取得する例です。
結果の確認はコマンドプロンプト+curlコマンドで行っています。
utf-8でエンコードされるので、事前にCHCP 65001を実行しています。

nodejt02.PNG
実行結果
nodejt03.png
ライブラリを指定していなくてもエラーにならないのは、ライブラリリストにMYLIBが載っているからです。
明示的に指定する場合は、/(スラッシュ)で指定します。

JSON形式で返す例です。

SQLquery.js
app.get("/queryJson", function (req, res, next) {
    let stmt = "select * from mylib/member where id <= ? or prof like ?";
    pool.query(stmt,[101,'%あい%']).then(
        function (result) {
            res.json(result);
        }
    )
});

nodejt04.png

0
2
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
0
2