如何在PHP中获取有关SQL警告的更多信息?

时间:2015-08-06 09:16:32

标签: php sql oracle oracle10g

我正在尝试使用PHP访问Oracle数据库,但它会引发以下错误:

Warning: oci_execute(): in PATH_TO_FILE.php on line XXX没有更多信息......

我在那条线上做了以下......

oci_free_statement($stmt);
$consulta="LOAD DATA CONCURRENT LOCAL INFILE 'files/data.csv' 
          INTO TABLE PRUEBA_SMS FIELDS TERMINATED BY ';' 
          LINES TERMINATED BY '\n' 
          (@FECHA,NODO,SERVICIO,VALOR) 
 SET FECHAHORAINF=TO_DATE(@FECHA,'DD/MM/YYYY hh24:mi:ss')";
$stmt=oci_parse($conexion, $consulta);
oci_execute($stmt);

有没有办法更多地了解这个警告,为什么会失败?

更新:嗯,经过研究我认为问题是LOAD DATA INFILE程序与SQL数据库不兼容,只有它是MySQL数据库。我尝试将命令启动到Oracle SQL Plus程序中,它会引发下一个错误...

SP2-0734: unknown command beginning "LOAD DATA ... " Rest of the line ignored

问候!

2 个答案:

答案 0 :(得分:0)

如果您的error_reporting级别设置为E_WARNING,您应该在Apache error_log中看到一条带有完整Oracle错误堆栈的警告消息。

答案 1 :(得分:0)

对于Oracle,请尝试使用SQL-Loader [sqlldr]

你可以在这里找到有用的例子(以及整个互联网) http://docs.oracle.com/cd/B10501_01/text.920/a96518/aload.htm

Saludos。