Node.js 到 DB2(使用 ibm_db)

标签 node.js db2

我已按照说明操作:https://www.ibm.com/developerworks/community/blogs/pd/entry/using_ibm_db2_from_node_js4?maxresults=15&page=0&lang=en 用于 32 位安装的 Ubuntu。

它似乎已正确安装,我可以运行 require('ibm_db')。使用提供的示例代码(nodedb2test.js),无论我使用什么数据库参数,我都会收到错误:

node nodedb2test.js
Test program to access DB2 sample database
*** stack smashing detected ***: node terminated
Aborted (core dumped)

示例代码如下:

/*require the ibm_db module*/

var ibmdb = require('ibm_db');
console.log("Test program to access DB2 sample database");

ibmdb.open("DRIVER={DB2};DATABASE=testdb;UID=username;PWD=password;HOSTNAME=localhost;port=3000", function(err, conn)

{
        if(err) {
            console.error("error: ", err.message);
           }

});

另外我发现我需要连接的DB2版本是版本6。我已经安装了BM Data Server Driver版本10.5,这与DB2的版本相对应吗?下面显示 v9.1 驱动程序不可用。

最佳答案

在撰写本文时,这对我有用。

C:\Development\Javascript>node -p "process.arch" x64

C:\Development\Javascript>node -p "process.platform" win32

C:\Development\Javascript>node -p "process.version" v14.17.5

C:\Development\Javascript>npm 安装 ibm_db

var ibmdb = require("ibm_db");

const config = require("config");
const hostname = config.get("db2.hostname");
const username = config.get("db2.username");
const password = config.get("db2.password");

ibmdb.open("DRIVER={DB2};DATABASE=bludb;HOSTNAME=" + hostname + ";UID=" + username + ";PWD=" + password + ";PORT=31198;PROTOCOL=TCPIP;SECURITY=SSL", function (err, conn){

  if (err) return console.log(err);

  conn.query("SELECT * FROM orders", function (err, data) {

    if (err) console.log(err);

    console.log(data);

    conn.close(function () {
      console.log('done');
    });

  });

});

关于Node.js 到 DB2(使用 ibm_db),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24050591/

相关文章:

node.js - Docker - 从基础镜像中覆盖或删除 ENTRYPOINT

php - 总是用 PHP 准备 SQL 语句有什么问题吗?

database - 如何找到 DB2 (luw) 数据库的大小?

javascript - 从字符串 mssqlsequelize 转换日期和/或时间时转换失败

node.js - Mongoose /MongoDB : Get second to last document

node.js - meteor 1.1 - 错误 : spawn ENOENT on Windows 8. 1

javascript - 如何在 NodeJS 上使用 nanoid 模块?

java - 在 Mac OS X 上使用 DB2 和 jdbc

java - 通过 Java 运行时出现错误 "Alter table <TableName> not logged initially"

java - 从 Oracle 到 DB2 数据库的数据传输