我正在尝试将CSV数据插入数据库,我在下面尝试过
<?php
$stmt = $con->prepare('INSERT INTO test (field1, field2, load_time) VALUES (:val1, :val2, sysdate)');
$i=0;
while (($data = fgetcsv($source)) !== FALSE) {
if($i!=0) {
$field1=$data[0];
$field2=$data[1];
$stmt->bindParam(':val1', $field1);
$stmt->bindParam(':val2', $field2);
$stmt->execute();
}
$i++;
}
?>
此代码不起作用,如果此代码中有任何问题,请帮助修复,因为我是预准备语句和 PDO 的新手。
我尝试了类似的东西,只有一条记录,在时间戳列中插入 sysdate,但它运行没有问题。
<?php
$con = oci_connect(
"admdba","admdba",
"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ghp-amdphIIX4B.ghp.be)"
. "(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=GHPORA)(SID=GHPORA)))");
if ($con) {
$stmt = oci_parse(
$con,
'INSERT INTO test (field1, field2, load_time)'
. ' VALUES (:val1, :val2, sysdate)');
$field1='amehoela';
$field2='broodkorst';
oci_bind_by_name($stmt, ':val1', $field1);
oci_bind_by_name($stmt, ':val2', $field2);
oci_execute($stmt);
print "Access registered<BR/>";
} else {
print "Failed to connect <BR/>";
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
?>
还有一件事:你的桌子上没有触发器?