0% found this document useful (0 votes)
6 views

PL - SQL Experiments

Uploaded by

historyreboot13
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

PL - SQL Experiments

Uploaded by

historyreboot13
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

EXERCISE

1. CODE:
DECLARE
num Number(5) := :num; -- Variable Decration
BEGIN
If (num < 0) then -- Condition to check whether number is negative
dbms_output.put_line('Number is Negative');
Else -- If num is positive
dbms_output.put_line('Number is Positive');
End if;

dbms_output.put_line('Program Executed By Ibrahim Kazi Roll No 31');


END;

INPUT:

OUTPUT:
Number is Negative
Program Executed By Ibrahim Kazi Roll No 31

2. CODE:
DECLARE
age Number(5) := :age; -- Variable Decration
BEGIN
If (age > 18) then -- Condition to check whether age is greater than 18
dbms_output.put_line('You can vote');
Else -- If age is not greater than 18
dbms_output.put_line('You cannot vote');
End if;

dbms_output.put_line('Program Executed By Ibrahim Kazi Roll No 31');


END;

INPUT:

OUTPUT:
You cannot vote
Program Executed By Ibrahim Kazi Roll No 31
EXERCISE

3. CODE:
DECLARE
percentage Number(5) := :percentage; -- Variable Decration

BEGIN
If (percentage >= 75) then -- Condition to check DISTINCTION
dbms_output.put_line('Distinction');
Elsif (percentage >= 60 and percentage < 75) then -- Condition to check FIRST
CLASS
dbms_output.put_line('First Class');
Elsif (percentage >= 45 and percentage < 60) then -- Condition to check SECOND
CLASS
dbms_output.put_line('Second Class');
Elsif (percentage >= 40 and percentage < 45) then -- Condition to check PASS
CLASS
dbms_output.put_line('Pass Class');
Else -- For FAIL
dbms_output.put_line('Fail');
End if;

dbms_output.put_line('Program Executed By Ibrahim Kazi Roll No 31');

END;

INPUT:

OUTPUT:
Distinction
Program Executed By Ibrahim Kazi Roll No 31
EXERCISE

1. CODE:
DECLARE
i Number; -- Variable Decration

BEGIN
For i in 1..10 -- For Loop Condition
Loop
dbms_output.put_line('5 x ' || i || ' = ' || i*5); -- Multiplication Process
End Loop;
dbms_output.put_line('Program Executed By Ibrahim Kazi Roll No 31');

END;

OUTPUT:
5x1=5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
5 x 10 = 50
Program Executed By Ibrahim Kazi Roll No 31

2. CODE:
DECLARE
num Number(2) := 10; -- Variable Decration
fact Number := 1;

BEGIN
While(num > 0) -- While Loop Condition
Loop
fact:= fact * num; -- Factorial Calculation
num := num - 1; -- Decrement of
Number
End Loop;
dbms_output.put_line('Factorial of 10 = ' || fact); -- Displaying Factorial
dbms_output.put_line('Program Executed By Ibrahim Kazi Roll No 31');

END;
EXERCISE

OUTPUT:
Factorial of 10 = 3628800
Program Executed By Ibrahim Kazi Roll No 31

3. CODE:
DECLARE
i Number; -- Variable Declaration
j Number;
flag Number(1) := 0;
counter Number := 1;

BEGIN
For i in 1..50 -- While Loop Condition
Loop
flag := 0;
If (i = 2) then
dbms_output.put_line(i);
Else
For j in 2..i-1
Loop
if( mod(i, j) = 0) then
flag := 1;
exit;
End If;
End Loop;

if( flag = 0) then


dbms_output.put_line(i);
counter := counter + 1;
End If;
End If;
End Loop;

dbms_output.put_line('Number Of Prime Numbers = ' || counter);


dbms_output.put_line('Program Executed By Ibrahim Kazi Roll No 31');

END;
EXERCISE

OUTPUT:
1
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
Number Of Prime Numbers = 16
Program Executed By Ibrahim Kazi Roll No 31
EXERCISE

1. CODE:
DECLARE
sum_even Number := 0; -- Variable Declaration
i Number := 1;

BEGIN
For i in 1..10 -- For Loop Condition
Loop
If mod(i,2) != 0 then
CONTINUE; -- Skipping Even Numbers
End If;

sum_even := sum_even + i; -- Summation of Odd Numbers


End Loop;

dbms_output.put_line('Sum of Odd Numbers between 1 and 10 = ' || sum_even );


dbms_output.put_line('Program Executed By Ibrahim Kazi Roll No 31');
END;

OUTPUT:
Sum of Odd Numbers between 1 and 10 = 30
Program Executed By Ibrahim Kazi Roll No 31

2.CODE:
DECLARE
num Number := 1; -- Variable Declaration

BEGIN
while num <= 10 -- While Loop Condition
Loop
If num = 5 then
GOTO skip; -- Skipping Number 5
End If;

dbms_output.put_line('Number: ' || num); -- Displaying Sum


<<skip>> -- Skip Label
num := num + 1;
End Loop;

dbms_output.put_line('Program Executed By Ibrahim Kazi Roll No 31');


END;
EXERCISE

OUTPUT:
Number: 1
Number: 2
Number: 3
Number: 4
Number: 6
Number: 7
Number: 8
Number: 9
Number: 10
Program Executed By Ibrahim Kazi Roll No 31

3.CODE:
DECLARE
day Number := :day; -- Variable Declaration

BEGIN
CASE day -- Case block based on day
WHEN 1 THEN dbms_output.put_line('Monday'); -- For 1
WHEN 2 THEN dbms_output.put_line('Tuesday'); -- For 2
WHEN 3 THEN dbms_output.put_line('Wednesday'); -- For 3
WHEN 4 THEN dbms_output.put_line('Thursday'); -- For 4
WHEN 5 THEN dbms_output.put_line('Friday'); -- For 5
WHEN 6 THEN dbms_output.put_line('Saturday'); -- For 6
WHEN 7 THEN dbms_output.put_line('Sunday'); -- For 7
ELSE dbms_output.put_line('Invalid Input'); -- default
END CASE;

dbms_output.put_line('Program Executed By Ibrahim Kazi Roll No 31');


END;

INPUT:

OUTPUT:
Saturday
Program Executed By Ibrahim Kazi Roll No 31
EXERCISE

1.CODE:
CREATE TABLE STUDENTS (ROLLNO NUMBER(2), NAME VARCHAR(50), DEPT
VARCHAR(20));

BEGIN
INSERT INTO STUDENTS VALUES(1, 'IBRAHIM', 'COMPUTER');
INSERT INTO STUDENTS VALUES(2, 'RUSHIL', 'COMPUTER');
INSERT INTO STUDENTS VALUES(3, 'TANMAY', 'ELECTRONICS');
INSERT INTO STUDENTS VALUES(4, 'SOHAM', 'COMPUTER');
INSERT INTO STUDENTS VALUES(5, 'KAVISH', 'MECHANICAL');
END;

DECLARE
CURSOR STUDENT_CURSOR IS
SELECT ROLLNO, NAME FROM STUDENTS
WHERE DEPT='COMPUTER';
CURSOR_ROW STUDENT_CURSOR%ROWTYPE;

BEGIN
OPEN STUDENT_CURSOR; - - OPENING THE CURSOR
LOOP
FETCH STUDENT_CURSOR INTO CURSOR_ROW; --FETCHING ROW
EXIT WHEN STUDENT_CURSOR%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(CURSOR_ROW.ROLLNO || ' ' ||
CURSOR_ROW.NAME);
END LOOP;
CLOSE STUDENT_CURSOR;
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31');
END;

OUTPUT:
1 IBRAHIM
2 RUSHIL
4 SOHAM
PROGRAM EXECUTED BY IBRAHIM KAZI 31
EXERCISE

2. CODE

CREATE TABLE STUDENTS (ROLLNO NUMBER(2), NAME VARCHAR(50), DEPT


VARCHAR(20));

BEGIN
INSERT INTO STUDENTS VALUES(1, 'IBRAHIM', 'COMPUTER');
INSERT INTO STUDENTS VALUES(2, 'RUSHIL', 'COMPUTER');
INSERT INTO STUDENTS VALUES(3, 'TANMAY', 'ELECTRONICS');
INSERT INTO STUDENTS VALUES(4, 'SOHAM', 'COMPUTER');
INSERT INTO STUDENTS VALUES(5, 'KAVISH', 'MECHANICAL');
INSERT INTO STUDENTS VALUES(6, 'RAJ', 'COMPUTER');
INSERT INTO STUDENTS VALUES(7, 'HASAN', 'AUTOMATION');
END;

SELECT * FROM STUDENTS;

ROLLNO NAME DEPT

1 IBRAHIM COMPUTER
2 RUSHIL COMPUTER
3 TANMAY ELECTRONICS
4 SOHAM COMPUTER
5 KAVISH MECHANICAL
6 RAJ COMPUTER
7 HASAN AUTOMATION

DECLARE
CURSOR STUDENT_CURSOR IS
SELECT ROLLNO, NAME FROM STUDENTS
WHERE DEPT='COMPUTER';
COUNTER NUMBER := 0;
CURSOR_ROW STUDENT_CURSOR%ROWTYPE;
BEGIN

OPEN STUDENT_CURSOR;
LOOP
FETCH STUDENT_CURSOR INTO CURSOR_ROW;
EXIT WHEN STUDENT_CURSOR%NOTFOUND;
COUNTER := COUNTER + 1;
END LOOP;
CLOSE STUDENT_CURSOR;
EXERCISE

OPEN STUDENT_CURSOR;
FOR I IN 1..COUNTER LOOP
FETCH STUDENT_CURSOR INTO CURSOR_ROW;
EXIT WHEN STUDENT_CURSOR%NOTFOUND;
IF (MOD(I,2) = 0 ) THEN
DBMS_OUTPUT.PUT_LINE(CURSOR_ROW.ROLLNO || ' ' ||
CURSOR_ROW.NAME);
END IF;
END LOOP;
CLOSE STUDENT_CURSOR;
END;

OUTPUT:
2 RUSHIL
6 RAJ

3. CODE:

CREATE TABLE STORE (NAME VARCHAR(50), PRICE NUMBER(20));

BEGIN
INSERT INTO STORE VALUES('Play Station 5', 45000);
INSERT INTO STORE VALUES('T-Shirt', 800);
INSERT INTO STORE VALUES('Lego Set', 2000);
INSERT INTO STORE VALUES('Laptop', 60000);
INSERT INTO STORE VALUES('Board Games', 5000);
INSERT INTO STORE VALUES('Nintendo Switch', 22000);
INSERT INTO STORE VALUES('Smartphone', 75000);
END;

SELECT * FROM STORE;

NAME PRICE

Play Station 5 45000


T-Shirt 800
Lego Set 2000
Laptop 60000
Board Games 5000
Nintendo Switch 22000
Smartphone 75000
EXERCISE

DECLARE
CURSOR STORE_CURSOR IS
SELECT NAME, PRICE FROM STORE
WHERE PRICE > 10000;
CURSOR_ROW STORE_CURSOR%ROWTYPE;

BEGIN
OPEN STORE_CURSOR; -- OPENING THE CURSOR
LOOP
FETCH STORE_CURSOR INTO CURSOR_ROW; --FETCHING ROW
EXIT WHEN STORE_CURSOR%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(CURSOR_ROW.NAME || ' ' ||
CURSOR_ROW.PRICE);
END LOOP;
CLOSE STORE_CURSOR;
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31');
END;

OUTPUT:
Play Station 5 45000
Laptop 60000
Nintendo Switch 22000
Smartphone 75000
PROGRAM EXECUTED BY IBRAHIM KAZI 31
EXERCISE

1. CODE:
DECLARE -- VARIABLE DECLARATION
a NUMBER := :a;
b NUMBER := :b;
c NUMBER;

BEGIN
c := a/b; -- PERFORMING DIVISION

DBMS_OUTPUT.PUT_LINE(a || '/' || b || '=' || c);


DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);

EXCEPTION
-- DEFINING EXCEPTION
WHEN ZERO_DIVIDE THEN
DBMS_OUTPUT.PUT_LINE('DIVISION BY ZERO NOT POSSIBLE');
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);
END;

INPUT:

OUTPUT:
8/4=2
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024

INPUT:

OUTPUT:
DIVISION BY ZERO NOT POSSIBLE
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024
EXERCISE

2. CODE:

CREATE TABLE EMPLOYEE (ID NUMBER(5), SAL NUMBER(8, 2));

BEGIN
INSERT INTO EMPLOYEE VALUES (1, 300000.00);
INSERT INTO EMPLOYEE VALUES (2, 40000.00);
INSERT INTO EMPLOYEE VALUES (3, 800000.00);
INSERT INTO EMPLOYEE VALUES (4, 350000.00);
INSERT INTO EMPLOYEE VALUES (5, 400000.00);
END;

SELECT * FROM EMPLOYEE;

ID SAL

1 300000
2 40000
3 800000
4 350000
5 400000

DECLARE -- VARIABLE DECLARATION


e_id NUMBER := :ENTER_ID;
e_sal NUMBER;

BEGIN
SELECT SAL INTO e_sal FROM EMPLOYEE WHERE ID = e_id;

DBMS_OUTPUT.PUT_LINE('ID: ' || e_id);


DBMS_OUTPUT.PUT_LINE('SALARY: ' || e_sal);
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);

EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('EMPLOYEE ID NOT FOUND');
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);

END;
EXERCISE

INPUT:

OUTPUT:
ID: 3
SALARY: 800000
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024

INPUT:

OUTPUT:
EMPLOYEE ID NOT FOUND
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024
EXERCISE

1. CODE:

DECLARE -- VARIABLE DECLARATION


a NUMBER := :a;
b NUMBER := :b;
c NUMBER;
DIV_GREATER EXCEPTION;

BEGIN
IF b > a THEN
RAISE DIV_GREATER;
END IF;

c := a/b; -- PERFORMING DIVISION

DBMS_OUTPUT.PUT_LINE(a || '/' || b || '=' || c);


DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);

EXCEPTION
-- DEFINING EXCEPTION
WHEN DIV_GREATER THEN
DBMS_OUTPUT.PUT_LINE('DIVISOR IS GREATER THAN DIVIDEND');
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);

WHEN ZERO_DIVIDE THEN


DBMS_OUTPUT.PUT_LINE('DIVISION BY ZERO NOT POSSIBLE');
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);
END;

INPUT:

OUTPUT:
10/8=1.25
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024
EXERCISE

INPUT:

OUTPUT:
DIVISOR IS GREATER THAN DIVIDEND
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024

INPUT:

OUTPUT:
DIVISION BY ZERO NOT POSSIBLE
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024
EXERCISE

2. CODE:

CREATE TABLE CUSTOMER (CUSTOMER_ID NUMBER(5), NAME VARCHAR(20));

BEGIN
INSERT INTO CUSTOMER VALUES (1, 'IBRAHIM');
INSERT INTO CUSTOMER VALUES (2, 'RUSHIL');
INSERT INTO CUSTOMER VALUES (3, 'TANMAY');
INSERT INTO CUSTOMER VALUES (4, 'SOHAM');
INSERT INTO CUSTOMER VALUES (5, 'KAVISH');
END;

DECLARE -- VARIABLE DECLARATION


id NUMBER := :ENTER_ID;
n VARCHAR(20);
INVALID_ID EXCEPTION;

BEGIN
IF id <= 0 THEN
RAISE INVALID_ID;
ELSE
SELECT NAME INTO n FROM CUSTOMER WHERE CUSTOMER_ID=id;
DBMS_OUTPUT.PUT_LINE('ID: ' || id);
DBMS_OUTPUT.PUT_LINE(' NAME: ' || n);
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);
END IF;

EXCEPTION
WHEN INVALID_ID THEN
DBMS_OUTPUT.PUT_LINE('ID SHOULD BE GREATER THAN 0');
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);

WHEN NO_DATA_FOUND THEN


DBMS_OUTPUT.PUT_LINE('NO CUSTOMER OF ID ' || id || ' EXISTS');
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);

WHEN OTHERS THEN


DBMS_OUTPUT.PUT_LINE('ERROR');
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' ||
SYSDATE);
END;
EXERCISE

INPUT:

OUTPUT:
ID: 1
NAME: IBRAHIM
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024

INPUT:

OUTPUT:
ID SHOULD BE GREATER THAN 0
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024

INPUT:

OUTPUT:
NO CUSTOMER OF ID 10 EXISTS
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024
EXERCISE

1. CODE;
--CREATING PROCEDURE
CREATE OR REPLACE PROCEDURE EMP_COUNT (D IN NUMBER, C OUT NUMBER)
IS
BEGIN
SELECT COUNT(*)
INTO C
FROM EMP
JOIN DEPT
ON EMP.DEPTNO = DEPT.DEPTNO
WHERE DEPT.DEPTNO = D;
END;

--USING PROCEDURE
DECLARE
C NUMBER;
BEGIN
EMP_COUNT(:ENTER_DEPT, C);
DBMS_OUTPUT.PUT_LINE('EMPLOYEES = ' || C);
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' || SYSDATE);
END;

INPUT:

OUTPUT:
EMPLOYEES = 3
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/26/2024

2. CODE:

-- CREATING
CREATE OR REPLACE PROCEDURE GREET (NAME IN VARCHAR)
IS
BEGIN
DBMS_OUTPUT.PUT_LINE('HELLO ' || NAME);
END;
EXERCISE

OUTPUT:

Procedure created.

-- USING THE PROCEDURE


BEGIN
GREET('IBRAHIM');
END;

OUTPUT:
HELLO IBRAHIM

3. CODE:
CREATE TABLE EMP (ID NUMBER(5), NAME VARCHAR(20));

--Creating Procedure
CREATE OR REPLACE PROCEDURE EMP_INSERT(I IN NUMBER, N IN VARCHAR)
IS
BEGIN
INSERT INTO EMP VALUES (I, N);
END;

--Using Procedure
BEGIN
FOR I IN 1..3 LOOP
EMP_INSERT(I, 'A');
END LOOP;

END;

--Viewing Output
SELECT * FROM EMP;

OUTPUT:
ID NAME

1 A
2 A
3 A
EXERCISE

1. CODE:

CREATE OR REPLACE FUNCTION MAX_NUM (A IN NUMBER, B IN NUMBER)


RETURN NUMBER
IS
BEGIN
IF (A > B) THEN
RETURN A;

ELSIF (B > A) THEN


RETURN B;

ELSIF (A = B) THEN
RETURN A;
END IF;
END;

SELECT MAX_NUM(8, 12) FROM DUAL;

MAX_NUM(8,12)

12

--USING BEGIN END TO USE FUNCTION


DECLARE
A NUMBER := :ENTER_A;
B NUMBER := :ENTER_B;

BEGIN
DBMS_OUTPUT.PUT_LINE('MAX OF ' || A || ' ' || B || ' = ' || MAX_NUM(A,B));
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' || SYSDATE);
END;

OUTPUT:
MAX OF 7 31 = 31
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/30/2024
EXERCISE

2. CODE:

CREATE OR REPLACE FUNCTION FACTORIAL (N IN NUMBER)


RETURN NUMBER
IS
FACT NUMBER := 1;
BEGIN
FOR I IN 1..N
LOOP
FACT := FACT * N;
END LOOP;
RETURN FACT;
END;

SELECT FACTORIAL(5) FROM DUAL;

FACTORIAL(5)

3125

--USING BEGIN END TO CALL FUNCTION

BEGIN
DBMS_OUTPUT.PUT_LINE('FACTORIAL = ' || FACTORIAL(:ENTER_NUM));
DBMS_OUTPUT.PUT_LINE('PROGRAM EXECUTED BY IBRAHIM KAZI 31 ' || SYSDATE);
END;

INPUT:

OUTPUT:

FACTORIAL = 46656
PROGRAM EXECUTED BY IBRAHIM KAZI 31 09/30/2024
EXERCISE

1. CODE:

CREATE OR REPLACE TRIGGER EMP_TRIG


BEFORE INSERT OR UPDATE
ON EMP
FOR EACH ROW

BEGIN
DBMS_OUTPUT.PUT_LINE('TRIGGER BY IBRAHIM KAZI 31 '|| SYSDATE);
CASE
WHEN INSERTING THEN
IF :NEW.SAL < 5000 THEN
RAISE_APPLICATION_ERROR(-20001, 'CANNOT PERFORM AS SALARY IS
BELOW 5000');
END IF;

WHEN UPDATING THEN


IF (:NEW.SAL < 5000 OR :OLD.SAL < 5000 ) THEN
RAISE_APPLICATION_ERROR(-20005, 'CANNOT PERFORM AS SALARY IS
BELOW 5000 ');
END IF;
END CASE;
END;

INPUT:
INSERT INTO EMP VALUES (7936, 'IBRAHIM', 'PRESIDENT', NULL, SYSDATE, 10000, NULL,
20);

OUTPUT:
TRIGGER BY IBRAHIM KAZI 31 10/03/2024
1 row(s) inserted.

INPUT:
INSERT INTO EMP VALUES (7938, 'RUSHIL', 'MANAGER', NULL, SYSDATE, 1000, NULL,
20);

OUTPUT:
EXERCISE

INPUT:
UPDATE EMP SET SAL = 9000 WHERE EMPNO = 7936;

OUTPUT:
TRIGGER BY IBRAHIM KAZI 31 10/03/2024
1 row(s) updated.

INPUT:
UPDATE EMP SET SAL = 4000 WHERE EMPNO = 7936;

OUTPUT:

2. CODE:

CREATE OR REPLACE TRIGGER DEPT_TRIG


BEFORE UPDATE
ON DEPT
FOR EACH ROW

BEGIN
RAISE_APPLICATION_ERROR(-20009, 'CANNOT UPDATE ON DEPT TABLE TRIGGER
BY IBRAHIM KAZI 31 '|| SYSDATE);
END;

INPUT:
UPDATE DEPT SET LOC = 'LONODN' WHERE DEPTNO = 10;

OUTPUT:

You might also like