PDOStatement参数在oci_bind_input_cb中为NULL

时间:2015-03-30 21:29:32

标签: php oracle pdo

我无法使用此代码:

$elements = explode(';',$var); //$var contains a bunch of data...csv style.
$sql ="INSERT INTO TABLE
                (Col1,Col2,Col3,Col4,Col5)
                select :data1,:data2,:data3,:data4,:data5 from DUAL
                 where not EXISTS  (select * from TABLE where (Col1= :data1 and Col2= :data2 AND Col3 = :data3 AND col4= :data4 AND col5 = :data5))
                ";

    foreach ($elements as $value){
    $query1 = $connexion->prepare($sql);
    $query1->bindParam(':data1', $elements[0]);
    $query1->bindParam(':data2', $elements[1]);
    $query1->bindParam(':data3', $elements[2]);
    $query1->bindParam(':data4', $elements[3]);
    $query1->bindParam(':data5',$elements[4]);
    $query1->execute();
    }
    var_dump($elements[0].$elements[1].$elements[2].$elements[3].$elements[4]);
//the dump shows that there's no null on my elements

    $query1->closeCursor();

当我执行我的页面时,我收到此错误:

Warning: PDOStatement::execute() [pdostatement.execute]: param is NULL in oci_bind_input_cb; this should not happen

当然插入失败了。 我试图使用bindValue,但我一直得到同样的错误。 你能帮忙吗?

0 个答案:

没有答案