php - 在 IBM i (AS400) DB2 中导入/导出 CSV

标签 php ibm-midrange zend-server db2-400 jdedwards

我正在为即将到来的集成项目做准备,我需要将一些数据导入/导出我们的 ERP 到文件系统。我们在 IBM iSeries/AS400 V6R1 机器上运行 JD Edwards World 9.2。

我们要集成的软件要求我们使用按计划导出/导入并可通过 SFTP 访问的 CSV 文件进行集成。

我安装了 zend 服务器 (apache),并且很乐意使用 Apache、PHP 和 SQL,但对 CL 和 RPG 编程的了解几乎为零(但愿意学习)。我们也没有 WebQuery。导出的文件需要连接和过滤表之间的数据,因此需要 SQL 或类似的东西,所以我希望不是直接的 CPYTOIMPF。

作为一个非常粗略的大纲,我想我可以编写一个快速的 php 文件,该文件将运行 sql 查询以将结果解析为 IFS 中的 csv,反之亦然,由 cron'd wget(或 ibm 等效项)加载.

在开始之前,我想看看是否有人可以推荐更好的方法

您会推荐哪些策略和/或链接? cron 和 wget 的等效项是什么?

最佳答案

cron 相当于作业调度程序。它有两种来自 IBM 的版本,每个系统都包含基本版本“Work with Job Schedule Entries (WRKJOBSCDE)”和 Advanced Job Scheduler,“Work with Jobs using Job Scheduler (WRKJOBJS)”

您的系统上可能还有一个或多个第三方调度程序。

操作系统中没有内置 wget 等价物。有各种第三方实用程序,甚至还有一些免费和/或开源实用程序。您也可以想象在 PASE 中安装和使用 wget 的 AIX 版本。
http://yips.idevcloud.com/wiki/index.php/PASE/PackageManager

现在就导入/导出而言。 IBM 当然提供了 CPYTOIMPF 和 CPYFRMIMPF 命令。但是为了性能和错误处理的灵 active ,许多人更喜欢使用 RPG 来滚动他们自己的错误处理。 PHP 将是您的替代选择。

还有几点……

虽然 CPYTOIMPF 确实不支持查询。它确实支持从 SQL View 进行处理。因此,只要您可以构建一个提供您提到的“连接和过滤”的 View ,CPYTOIMPF 就可以工作。

最后,IBM 确实包含一个“运行 SQL 语句”(RUNSQLSTM) 命令,该命令将执行包含在源文件成员中的 SQL 语句;包括 INSERT INTO somefile (SELECT ...) 这样您就可以加载一个物理表,然后您可以在该表上使用 CPYTOIMPF。此外,在该源成员中,您可以通过在命令前加上 CL:

来包含 CL 命令

关于php - 在 IBM i (AS400) DB2 中导入/导出 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30309394/

相关文章:

c# - 使用VS2012框架的IBM DB2连接4

linux - Ubuntu-Apache : How to start automatically apache at boot?

PHP页面突然重定向

php - 如何将 SSL 站点添加到 Zend Server

apache - 设置 Symfony2 以使用 apache + php-fpm

php - 使用/jQuery 进行简单的电子邮件验证

javascript - 获取项目的当前提交并显示它

php - PDO:显示表键无法正确绑定(bind)参数

ibm-midrange - 如何在RPGLE中获取字符类型变量的长度?

sql - IBM DB2 for i SQL (iSeries) - 使用更新从字段末尾删除字符