0

我必须在循环上触发 sql。问题是,每当 sql 在循环内失败时,前面循环的整个其他 sql 都会失败。例如,我有 100 次迭代的循环,假设在第 10 次迭代时出现 sql 错误,在这种情况下,它也不会为剩余的 90 次迭代触发 sql。

for($i=0;$i<$n;$i++) {

    $sql="BULK
                            INSERT epds_temp
                            FROM '{$uploadsCsv}1.csv'
                            WITH
                            (
                            FIELDTERMINATOR = ',',
                            ROWTERMINATOR = '\n'
                            )";
                        $this->Epd->query($sql);    



}

对于普通的 php 我可以做@mysql_query($sql);

有任何想法吗?

4

1 回答 1

0

你可以试试这个:

for($i=0;$i<$n;$i++) {

    $sql="BULK INSERT epds_temp
            FROM '{$uploadsCsv}1.csv'
            WITH
            (
              FIELDTERMINATOR = ',',
              ROWTERMINATOR = '\n'
            )";

        try {
           $this->Epd->query($sql);    
        } catch (Exception $e) {
            continue;
        }
}
于 2013-08-20T15:15:41.093 回答