Skip to main content

Oracle Triggers


/*ADDING NEW ROW BY TRIGGER 
/*ORACLE 9i SCOTT/TIGER 
/* TRIGGERED ON EMP TABLE
/*CREATING NEW TABLE WHICH WILL UPDATED BY TRIGGERED */

CREATE TABLE DEPT_SUMMARY
(
DEPTNO NUMBER,
AVG_SALARY NUMBER,
NO_OF_EMP NUMBER
);

create or replace
TRIGGER TG_EMP_SAL_SUMMARY
AFTER INSERT OR DELETE OR UPDATE ON EMP
DECLARE
  CURSOR CUR_EMP
  IS
    SELECT COUNT(ENAME),SUM(SAL),DEPTNO FROM EMP GROUP BY DEPTNO;
    V_CNT NUMBER;
    V_SAL EMP.SAL%TYPE:=0;
    V_DEPT EMP.DEPTNO%TYPE:=0;
BEGIN
  DELETE DEPT_SUMMARY;
  OPEN CUR_EMP;
    LOOP
      FETCH CUR_EMP INTO V_CNT,V_SAL,V_DEPT;
      EXIT WHEN NOT CUR_EMP%FOUND;
      INSERT INTO DEPT_SUMMARY
      VALUES(V_DEPT,V_SAL/V_CNT,V_CNT);
    END LOOP;
END TG_EMP_SAL_SUMMARY;

/*INSERTING NEW ROW INTO EMP*/


INSERT INTO EMP
VALUES(100,'DIBYENDU','ADMIN',15,'12-JAN-00',6580,250,20);

/*OUTPUT ON DEPT_SUMMARY TABLE

DEPTNO AVG_SALARY NO_OF_EMP
10 2916.66667 3
20 3204.375 8
30 1560


BASED ON (EMP TABLE)

ENAME SAL DEPTNO
SMITH 800 20
ALLEN 1600 20
WARD 1250 30
JONES 2975 20
MARTIN 1250 30
BLAKE 2850 30
CLARK 2450 10
SCOTT 3000 20
KING 5000 10
TURNER 1500 30
ADAMS 1100 20
JAMES 950 30
FORD 3000 20
MILLER 1300 10
ENAME SAL DEPTNO
DIBYENDU 6580 20
DIBYENDU 6580 20


*/

Comments

Popular posts from this blog

Setting up OpenGL environment for Microsoft Visual C++

Hi Friends, before starting the setting up OpenGL environment, please do the following first: 1.       Install Microsoft Visual C++ 6.0 (Comes with Ms Visual Studio 6.0) 2.       Download the file called “opengl95.exe” and “glutdlls.zip” from internet. [Just open browser-> navigate http://www.google.com -> type upper mentioned file name and search -> you will definitely find the appropriate link to download.] 3.       Run opengl95.exe file and it will be extracted and will be generated some files. Copy those files and 4.       Extract the file “glutdlls.zip” and it will also generate some more files. 5.       Now, combine all extracted files from two sources (opengl95.exe and glutdlls.zip) and place in one location. Setting up OpenGL environment for Microsoft Visual C++ With any system, you can start with a C\C++ compiler and install ...

Exp/ Imp vs. ExpDP/ ImpDP in Oracle 10g

ORACLE Export (exp) vs Datapump (expdp)    ORACLE provides two external utilities to transfer database objects from one database to another database. Traditional exports (exp /imp) are introduced before 10g. Then from 10g, ORACLE introduced datapump (expdp / impdp) as an enhancement to traditional export utility. Traditional Export (exp/ imp) This is an ORACLE database external utility, which is used to transfer database objects from one database server to another database server. It allows transferring the database objects over different platforms, different hardware and software configurations. When an export command is executed on a database, database objects are extracted with their dependency objects. That means if it extracts a table, the dependences like indexes, comments, and grants are extracted and written into an export file (binary format dump file). Following is the command to export a full database, Cmd > exp userid=username/password@exportdb_...

Sample : String Reverse In Java

import java.io.*; class test {     public static void main(String args[])     {         DataInputStream in=new DataInputStream(System.in);         try         {             String text;             System.out.println("\nEnter The Text");             text=in.readLine();             System.out.println("\nIn Reverse Order::\n");             for(int i=text.length()-1;i>=0;i--)             {                 System.out.print(text.charAt(i));             }          ...