SQL访问RPG OPM数据库文件

时间:2015-06-10 12:11:32

标签: ibm-midrange db2-400 rpg

我必须评估我的雇主打算购买的公司使用的旧版软件。该软件最初是在用于IBM System / 38的RPG II(或III?)中编程的,并且自那时起不断扩展。它现在位于具有i5 / OS和RPG II,III,IV / ILE运行时环境的全新i系列服务器上。 我并不是真的担心软件,而是数据存储。我知道i5 / OS包含一个DB / 2关系数据库,但DB / 2只在1990年代达到了中端。该软件早于大约十年。 System / 38也有一个集成的数据库,但我找不到任何细节,甚至名称。

该公司位于一个受到严格监管的业务部门,我知道在未来三年内预计会发生大规模的报告变更。我更愿意解决关系数据库中的报告问题,因为SQL专家比RPG专家更容易获得。

所以我想知道:

  • 我可以轻松访问传统的RPG II OPM传统系统数据库 通过集成的DB / 2文件?
  • 这些数据库文件是否会自动显示在DB / 2中?
  • 我是否需要以任何方式“导入”它们?
  • 我是否需要更改以任何方式创建/访问它们的软件才能在DB / 2中使用它们?
  • 或者我完全走错了轨道并且系统以完全不同的方式工作?

我不想替换现有的数据存储方法,我只是在寻找基于SQL的方法来定期以只读/复制到报表 - 数据库 - 多维数据集的方式访问现有数据。

我浏览了IBM知识库和一些红皮书,但“现代化IBM i应用程序”和“IBM i数据库编程”都没有用于解决这个问题。我发现的所有文献都假设了遗留系统的详细知识,并解释了高级语言和SQL概念,但没有一个解释现有的高级语言和遗留系统。 SQL视图。因此,对“互联网世代的RPG& i5 / OS”的指示也将受到高度赞赏。

1 个答案:

答案 0 :(得分:4)

在IBM i(以前的AS / 400,System i和& iSeries)上,数据库是数据库。无论最初如何定义,您都可以使用几乎任何语言访问它们。

名为'DB2 for i'的数据库与AS / 400的第一个版本中的基本数据库相同(它更快,效率更高,功能更多等等,但基本功能仍然相同)。

您可以使用SQL访问旧式数据库文件(物理和逻辑文件),并且可以使用传统的RPG函数(链,读,重新等)访问SQL定义的文件。您可能无法使用某些更高级的功能,但基本功能将始终存在。

IBM i最大的价值主张是向后兼容性......您可以从一个版本升级到另一个版本,99.9%的应用程序代码将不加修改地运行(.1%仅适用于您尝试执行违反规则的事情,很少有应用程序这样做。)