sql >> Database >  >> RDS >> Oracle

Beste manier om een ​​e-mail te ontvangen nadat gelijktijdig is mislukt (sql - trigger - applicatie)

U kunt dubbele pijpen gebruiken(|| ) als aaneenschakelingsoperatoren en filter de resultaten op uw gewenste statustypes die tussen haakjes achter de IN staan ​​vermeld operator voor de query.

Maak een procedure en neem uw query erin als een cursor en gebruik utl_http pakket binnen die procedure zoals hieronder:

create or replace procedure pr_mail_me is

  v_email varchar2(100) := '[email protected]';
  v_rep   varchar2(4000);
  v_url   varchar2(4000);

  cursor crs_request is
  select 'The concurrent '||program||' with request_id '||request_id||' ended with status '|| 
           status as message, request_id
    from
    (
       <the subquery>
      )
   where rn = 1
     and status in ('WARNING','ERROR','STAND BY');    

begin

  for c in crs_request
  loop
  begin

    v_url := 'http://www.mycompany.com/path_to/default.aspx?email=' ||
              v_email ||'&out_message='||c.message||'&out_request_id='||c.request_id;
    v_rep := utl_http.request(utl_url.escape(v_url,false,'UTF-8'));

   exception
       when others then
            v_url := 'http://www.mycompany.com/path_to/default.aspx?email=' ||
                      v_email ||'&out_message='||substr(sqlerrm,1,250)||'&out_request_id='||c.request_id;
                      v_rep := utl_http.request(utl_url.escape(v_url,false,'UTF-8'));
        end;
  end loop;
end;

om e-mails te ontvangen die deze procedure aanroepen.




  1. Een inconsistente PostgreSQL-slave opnieuw opbouwen

  2. Verkrijg dubbele precisiewaarden van inconsistente tekenreeksen voor het gebruik van ST_GeomFromText (PostGIS)

  3. iOS - Aanbevolen procedures voor kerngegevens en serverdatabasesynchronisatie

  4. Hoe het proces voor ongedaan maken van orakel te stoppen?