sql >> Database teknologi >  >> RDS >> Oracle

Hvordan kalder man java-klassen fra oracle trigger?

Hvad linker siger er

1) opret Java-klassen

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) Opret en lagret procedure (i grunden en pladsholder) for at kalde din java-klasse

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

3) Opret triggeren og kald denne procedure

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;
/

Prøv at bruge ovenstående trin og del resultaterne.



  1. Konverter decimaltid til timer og minutter

  2. returnere værdi ved en position fra STRING_SPLIT i SQL Server 2016

  3. Hvordan skriver man involveret rekursiv underforespørgsel i sqlplus med flere tabeller for at spore noder?

  4. Hvordan afrundes en DateTime i MySQL?