Live ORACLE

if you are Oracle Developer ,than this Blog most likely will make you happy.

About my Blog

This Blog particularized for Oracle Developers ... you will see interesting Codes for SQL , PL/SQL as well as new ideas for Developer Suite and Client Tools that will help you in your professional life ... and I hope I reach for your satisfaction.

About Me

I'm Hany Freedom , 25 years old , I live in EL-Minia City in Egypt , I'm Moderator at ArabOUG.org the best Arabic Forum for ORACLE on the Net. if you interested to know more about me .... just Click Here.

Using Rollbacks With FORALL

DROP TABLE emp_temp CASCADE CONSTRAINTS PURGE;


CREATE
TABLE emp_temp (
deptno NUMBER(2),
job VARCHAR2(18));



DECLARE

TYPE numlist IS TABLE OF NUMBER;
depts NUMLIST := Numlist(10,20,30);
BEGIN
INSERT INTO emp_temp
VALUES (10,
'Clerk');
-- Lengthening this job title causes an exception
INSERT INTO emp_temp
VALUES (20,
'Bookkeeper');
INSERT INTO emp_temp
VALUES (30,
'Analyst');
COMMIT;
FORALL j IN depts.FIRST..depts.LAST -- Run 3 UPDATE statements.
UPDATE emp_temp
SET job = job
||' (Senior)'
WHERE deptno = Depts(j);
-- raises a "value too large" exception
EXCEPTION
WHEN OTHERS THEN
dbms_output.Put_line('Problem in the FORALL statement.');
COMMIT; -- Commit results of successful updates.

END;
/



OUTPUT:-

Problem in the FORALL statement.

PL/SQL procedure successfully completed.

Share/Save/Bookmark

0 comments:

Post a Comment



Newer Posts Older Posts Home Page
 
http://www.dpriver.com/images/sqlpp-banner-2.png

Thanks for reading my Blog ... you Visitor Number :-