ODBC连接到iSeries提供奇数个结果

时间:2009-03-11 17:26:46

标签: php mysql odbc ibm-midrange unixodbc

我在Ubuntu 8.04 LTS上使用UnixODBC和PHP 5.2.4并试图从位于IBM i上的表中提取所有结果并将它们复制到本地MySQL表。

代码方面,它没有任何错误,但我最终得到的更多行包含在IBM i上。

我最终应该有25,613行,但PHP报告说有25,630行被插入到MySQL数据库中:

$counter = 0;
while($row = odbc_fetch_array($result)) {
    //Insert into MySQL using Zend Framework
    $counter++;
}
echo $counter;

当我查看MySQL数据库时,某些行实际上是重复的。我在odbc_fetch_array()文档中看到了关于访问IBM i时的不稳定行为的注释,但是尝试该解决方案会导致脚本运行并运行,而不会看似完成。

有关检查内容的任何想法?

1 个答案:

答案 0 :(得分:0)

每次都重复相同的行吗?如果是这样,这些记录是否有任何独特之处可以暗示它们为何重复?

也许使用另一个绑定来获得结果 - 比如odbc_fetch_row()odbc_num_rows()说什么?

这些和其他技术可能会帮助您解决错误。