sql >> Database >  >> RDS >> Oracle

Hoe java-klasse aan te roepen vanuit orakeltrigger?

Wat de link zeg is

1) maak de Java-klasse

CREATE OR REPLACE AND COMPILE JAVA SOURCE NAMED My_JavaClass AS
import java.io.*;
public class DBTrigger 
{
    public static void logSal()
    {
     System.out.println("In java class");
    }
}
/

2) Maak een opgeslagen procedure (in feite een tijdelijke aanduiding) om uw Java-klasse aan te roepen

CREATE OR REPLACE PROCEDURE My_Javaclass_proc
AS LANGUAGE JAVA NAME 'DBTrigger.logSal()';
/

3) Maak de trigger en roep deze procedure aan

CREATE OR REPLACE TRIGGER sal_trig
AFTER UPDATE OF sal ON emp
FOR EACH ROW
WHEN (new.sal > 1.2 * old.sal)
begin
  My_Javaclass_proc;
end;
/

Probeer de bovenstaande stappen te gebruiken en deel de resultaten.



  1. OUTPUT-clausule in MySQL

  2. MySQL - SOM van een groep tijdsverschillen

  3. Hoe te bepalen of een MySQL-updatequery is gelukt wanneer de gegevens die in de query worden doorgegeven hetzelfde zijn als wat er al in de database staat?

  4. Compex MySQL Left Join met behulp van meerdere items uit metatabellen