Warning bei ADODB

dadom110

Erfahrenes Mitglied
Hi...

habe ein Problem mit ADODB. Undzwar würde ich in meinem Programmcode die "Warnings" von ADODB abfangen. Bei aktiviertem Debug Modus bekomme ich als Beispiel folgende Warning:

Warning: ociexecute() [function.ociexecute]: ORA-01400: Einfügen von NULL in ("GSBIV"."C_SPRTKH_DSTATUS"."SPSTATUSTYP") nicht möglich in /var/www/html/t-intranet/pnadodb/drivers/adodb-oci8.inc.php on line 796
1400: ORA-01400: Einfügen von NULL in ("GSBIV"."C_SPRTKH_DSTATUS"."SPSTATUSTYP") nicht möglich

Leider ist mir schleierhaft, warum ADODB der Meinung ist das ein Mißglücktes "Insert" nur eine Warning ist und kein Error, aus dem Grund funktioniert meine Fehlerbehandlung natürlich auch nicht (PHP)

PHP:
if (mysql_errno()!=0)
  echo mysql_errno() . ": with <br> $sql <br>" . mysql_error() . "<br>";

Jemand eine gute Idee?
Danke schon mal
Dom
 
Ok wenn man es richtig macht kann ich auch die Warning abfangen:

PHP:
if (!$rs)
   ErrorMailer.mailError($dbconnOra->ErrorMsg(),$dbconnOra->ErrorNo(),$sql);


Jetzt gibt es nur noch einen Schönheitsfehler :) kann ich mir dieselbe Anzeige ausgeben lassen wie sie auch beim Debugging möglich ist, nur eben in einem FehlerFall? Mit oben genanntem Statement kann ich mir ja nur die Datenbank Exception zurück geben lasen (so was wie "ungültige Zahl") ich fänd es aber schöner wenn ich den Fehler Trace bekommen würde, so wie im DebugModus:

PHP:
942: ORA-00942: Tabelle oder View nicht vorhanden

                     ADOConnection._Execute(select * from C_SPRTKH_XXXX WHERE SPDAT='20081101' AND SPSCHICHT..., false) % line  785, file: adodb.inc.php
                  ADOConnection.Execute(select * from C_SPRTKH_XXXX WHERE SPDAT='20081101' AND SPSCHICHT...) % line   69, file: FormularBuilder.php
               Formular.executeSQL(select * from C_SPRTKH_XXXX WHERE SPDAT='20081101' AND SPSCHICHT...) % line  109, file: FormularBuilder.php
            Formular.loadData(Array[2]) % line   85, file: FormularBuilder.php
         Formular.loadAllFormsData() % line  388, file: index.php

Oder kann AdoDB das wirklich nur im DebugModus?

Grüße
D
 
Zurück