Php 违反完整性约束-发现子记录异常

Php 违反完整性约束-发现子记录异常,php,oracle,exception,error-handling,Php,Oracle,Exception,Error Handling,当我收到错误ORA-02292:违反完整性约束-找到子记录时,我想在我的网站中显示一条警报(很抱歉,此类型无法删除)消息。如何创建该异常?从php还是从数据库,具体是如何实现的 我试过这样的东西 begin -- Test statements here DELETE FROM PETTYPE WHERE PET_TYPE_CODE = 40; COMMIT; EXCEPTION WHEN CHILD_RECORD_FO

当我收到错误ORA-02292:违反完整性约束-找到子记录时,我想在我的网站中显示一条警报(很抱歉,此类型无法删除)消息。如何创建该异常?从php还是从数据库,具体是如何实现的

我试过这样的东西

begin
  -- Test statements here   
        DELETE FROM PETTYPE
        WHERE PET_TYPE_CODE = 40;
        COMMIT; 
EXCEPTION 
       WHEN CHILD_RECORD_FOUND  
       THEN Dbms_Output.put_line('ERROR'); 


end; 
但它不起作用,因为未声明找到的子记录


如有任何建议,将不胜感激!:)

当其他人

create table ref1 ( a int primary key);
create table ref2 (a int references ref1(a));

SQL> select * from ref1;

         A
----------
         1
         2

SQL> select * from ref2;

         A
----------
         1
         2

set serveroutput on

SQL>    declare
  2     begin
  3    -- Test statements here
  4          DELETE FROM REF1
  5          WHERE a = 1;
  6          COMMIT;
  7  EXCEPTION
  8         WHEN others then
  9          Dbms_Output.put_line('Im sorry but this type cannot be deleted');
 10
 11
 12  end;
 13  /
Im sorry but this type cannot be deleted

PL/SQL procedure successfully completed.

您可以使用PRAGMA exception_INIT声明将自己的异常类型与内部Oracle错误号相关联。文件: