Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
GOTO StatementThe GOTO statement branches to a label unconditionally. The label must be exclusive within its scope and should precede an executable statement or a PL/SQL block. If executed, the GOTO statement transfers control to the labeled statement or block. In the following illustration, you go to an executable statement farther down in a series of statements:BEGIN...GOTO insert_row;...<>INSERT INTO emp VALUES...END;In the next illustration, you go to a PL/SQL block farther up in a series of statements:BEGIN...<>BEGINUPDATE emp SET ......END;...GOTO update_row;...END;The label end_loop in the example below is illegal as it does not precede an executable statement:DECLAREdone BOOLEAN;BEGIN...FOR i IN 1..50 LOOPIF done THENGOTO end_loop;END IF;...<> -- illegalEND LOOP; -- not an executable statementEND;To debug the last illustration, now add the NULL statement, as shown:FOR i IN 1..50 LOOPIF done THENGOTO end_loop;END IF;...<>NULL; -- an executable statementEND LOOP;As the following illustration shows, a GOTO statement can branch to an enclosing block from the present block:DECLAREmy_ename CHAR(10);BEGIN<>SELECT ename INTO my_ename FROM emp WHERE...BEGIN...GOTO get_name; -- branch to enclosing blockEND;END;RestrictionsSome likely destinations of a GOTO statement are illegal. Particularly, a GOTO statement cannot branch into an IF statement, LOOP statement, or sub-block. For illustration, the following GOTO statement is illegal:BEGIN...GOTO update_row; -- illegal branch into IF statement...IF valid THEN...<>UPDATE emp SET...END IF;END;A GOTO statement also cannot branch from one IF statement clause to another, as the following illustration shows:BEGIN...IF valid THEN...GOTO update_row; -- illegal branch into ELSE clauseELSE...<>UPDATE emp SET...END IF;END;The next illustration shows that a GOTO statement cannot branch from an enclose block into a sub-block:BEGIN...IF status = ’OBSOLETE’ THENGOTO delete_part; -- illegal branch into sub-blockEND IF;...BEGIN...<>DELETE FROM parts WHERE...END;END;A GOTO statement also cannot branch out of a subprogram, as the following illustration shows:DECLARE...PROCEDURE compute_bonus (emp_id NUMBER) ISBEGIN...GOTO update_row; -- illegal branch out of subprogramEND;BEGIN...<>UPDATE emp SET...END;Finally, the GOTO statement cannot branch from an exception handler into the present block. For illustration, the following GOTO statement is illegal:DECLARE...pe_ratio REAL;BEGIN...SELECT price / NVL(earnings, 0) INTO pe_ratio FROM ...<>INSERT INTO stats VALUES (pe_ratio, ...);EXCEPTIONWHEN ZERO_DIVIDE THENpe_ratio := 0;GOTO insert_row; -- illegal branch into current blockEND;Though, a GOTO statement can branch from an exception handler into the enclosing block.
EXECUTE IMMEDIATE Statement The EXECUTE IMMEDIATE statement prepare (parses) and instantly executes a dynamic SQL statement or an anonymous PL/SQL block. Syntax:
Passing Cursor Parameters You use the OPEN statement to pass the parameters to a cursor. Unless you want to accept the default values, each proper parameter in the cursor decl
Implicit Cursor Attributes The Implicit cursor attributes returns the information about the execution of an INSERT, DELETE, UPDATE, or SELECT INTO statement. The cursor attribu
Using COMMIT The COMMIT statements end the present transaction and make permanent any changes made during that transaction. Till you commit the changes, other users cannot acc
Advantages of Packages The benefits of the Packages are as shown below: Modularity The Packages encapsulate logically associated items, types, and subprograms in the
Synonyms You can create the synonyms to provide location transparency for the remote schema objects like tables, views, sequences, stand-alone subprograms, and packages. Though,
Example of COALESCE operator Example: Give the total of marks for each exam (simplified solution) SELECT CourseId, COALESCE ((SELECT SUM (Mark) FROM EXAM_MARK AS EM
Committing and Rolling Back The COMMIT and ROLLBACK end the active autonomous transaction but do not exit the autonomous routine. As the figure shows, if one transaction ends,
Effects of NULL Operator As a general rule-but not a universal one-if NULL is an argument to an invocation of a system-defined read-only operator, then NULL is the result of t
Cursor FOR Loops In most cases that need an explicit cursor, you can simplify the coding by using a cursor FOR loop rather of the OPEN, FETCH, and CLOSE statements. A cursor FO
Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd