1

我在 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 时出现异常行为的注释,但尝试该解决方案会导致脚本运行和运行,但似乎从未完成。

关于检查什么的任何想法?

4

1 回答 1

0

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

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

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

于 2009-03-11T17:35:46.007 回答