Answer Posted / harinadh bolisetti
PL/SQL allows developers to define their own exceptions.
User can define the error/exception programmatically based on the business rule.
1. Define Exception
---------------------
We need to define the exception before we raise and handle. User Exceptions are defined using keyword EXCEPTION in declaration section of the block.
The syntax is as follows
<exception_name> EXCEPTION ;
2. Raise the Exception
--------------------------
Once the exceptions are defined , they need to be raised anywhere in the body depending upon predefined logic. User exceptions are raised using the keyword RAISE.
Syntax is as shown below
RAISE <exception_name>
3. Handle the Exception.
--------------------------
User exception are handled in the same way predefined exceptions are handled. They are handled in exception block using WHEN .. THEN keyword
Syntax is as shown below
WHEN <exception_name> THEN
example
----------------
DECLARE
low_sal EXCEPTION;
min_sal NUMBER:= 10000;
new_sal NUMBER:= 8000;
BEGIN
INSERT INTO EMP_EXC_DEMO(EMPNO, DEPTNO, SAL)
VALUES (4000,20,new_sal);
IF new_sal < min_sal THEN
RAISE low_sal;
END IF;
commit;
EXCEPTION
WHEN low_sal THEN
Rollback;
DBMS_OUTPUT.PUT_LINE ('Salary is less than '||min_sal);
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE (SQLERRM);
END;
| Is This Answer Correct ? | 2 Yes | 0 No |
Post New Answer View All Answers
how can we know the number of days between two given dates using mysql? : Sql dba
what is top in tsql? : Transact sql
Describe types of sql statements?
How do sql databases work?
what are aggregate and scalar functions? : Sql dba
What is schema in sql example?
Mention what is the function that is used to transfer a pl/sql table log to a database table?
what tools available for managing mysql server? : Sql dba
What is the difference between microsoft access and sql?
what is the command line end user interface - mysql? : Sql dba
What is the life of an sql statement?
How does cross join work in sql?
what is error ora-03113: end-of-file on communication channel?
What does select * from mean in sql?
What makes a good primary key?