我无法使用此代码:
$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,但我一直得到同样的错误。 你能帮忙吗?