我正在z / OS大型机上的Unix系统服务中编写一个C程序。其中一个要求是从驻留在同一主机上的DB2数据库中获取序列号。没有DB2 Connect可用,我想知道我的选择可能是什么。我可以在端口50000(默认的DB2端口)上打开一个套接字,但是,从我可以找到的IBM文档中,我不清楚这个环境中的其余过程。
我的后台有UNIX和DB2,但我只是在z / OS世界中沾沾自喜,所以我试图让它尽可能简单易用。
答案 0 :(得分:2)
为什么不使用unix ODBC驱动程序连接到数据库并使用ODBC的sql方言......这很容易做到......以这种方式使用ODBC,灵活性是为了将来的可维护性,说切换到另一个数据库提供程序...请参阅此处获取interacts通过ODBC
的示例C代码答案 1 :(得分:2)
在specific section上的DB2 / z 9.1文档中,有一个publib用于ODBC访问DB2 / z。 Publib应该始终是任何IBM doco的第一个调用点。
这是从OE / OMVS / USS上的C(或现在称之为的任何东西)访问DB2 / z的最佳方式。如果它是Java,我可能会帮助更多。在线帮助对于让JRE与大型机DB2(来自USS和PC)进行通信非常有价值,而对本地sysprog的麻烦最小。当然,使用它们会更容易:-)尤其是在设置z / OS(非USS)方面。
答案 2 :(得分:0)
对于C ++,我可以推荐OTL模板库来简化ODBC交互。它适用于IBM C ++和DB2 for z / OS。可以在不同的平台上使用。
链接:
Oracle, ODBC and DB2-CLI Template Library