Node.JS + ibm_db + Windows 上的 DB2 LUW 9.7 的代码页问题(例如德语变音符号)

Codepage problem (e.g. german umlauts) with Node.JS + ibm_db + DB2 LUW 9.7 on Windows

我们可以使用 npm 包 ibm_db.

在 Widows 客户端上从 Node.JS 成功访问 IBM DB2 LUW Server 9.7

但是 ibm_db SQL 查询的结果集中的字符编码确实存在问题。 JavaScripte 结果集中的数据在涉及德语变音符号 äÄöÖüÜß 时已经出现错误。

如果我们在命令行 (db2cmd.exe) 执行相同的 SQL 查询,一切都很好,包括变音符号。

如果我们检查 JavaScript SQL 结果集中变音符号的编码为整数 (string.charCodeAt(index)),我们发现变音符号已经变形。所有不同的变音符号都已转换为一个相同的 dec:65533/hex:FFFD/char:'�'.

我们还检查了数据库中的 SQL 列字符集:

select name,tbcreator,codepage from sysibm.syscolumns where ...

给出结果 1252。

其他徒劳的尝试:

嗯嗯....我确实有点卡住了。怎么了?

感谢任何帮助。

环境:

您是否测试过 Windows 系统环境变量 DB2CODEPAGE=1208 的设置? (你可能需要在设置后重新启动,让你的堆栈拾取它)