我想,如果一个查询在Oracle 10g中未能得到具体的错误消息。 对于MySQL,PHP有可能返回关于为什么一个查询失败的详细信息,mysql_error()函数。 我检查了oci_execute()函数php.net手册,但是从我看到的只是对失败返回false。
我试着用oc_error(),但我没有得到来自任何事情。
下面是一个代码示例:
$err = array();
$e = 0;
//Cycle through all files and insert new records into database
for($f=0; $f<sizeof($files); $f++)
{
$invoice_number = $files[$f]['invoice_number'];
$sold_to = $files[$f]['sold_to'];
$date = $files[$f]['date'];
$sql = "insert into invoice (dealer_id, invoice_number, invoice_date)
values ('$sold_to', '$invoice_number', '$date')";
$stid = oci_parse($conn, $sql);
$result = oci_execute($stid);
//If query fails
if(!$result)
{
$err[$e] = oci_error();
$e++;
}
}
print_r($err);
为的print_r($ ERR)响应:
Array ( [0] => [1] => [2] => [3] => [4] => [5] => [6] => [7] => [8] => )