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.
Tables within a Table - SQL Figure here is an exact copy of the one in the theory book and as before it is just an alternative way of representing some of the information con
Why Use Cursor Variables ? Primarily, you use the cursor variables to pass the query result sets between the PL/SQL stored subprograms and different clients. Neither PL/SQL nor
Functions The function is a subprogram that calculates a value. The Functions and procedures are structured similar, except that the functions have a RETURN clause. You can
%ROWCOUNT The %ROWCOUNT yields the number of rows affected by the INSERT, UPDATE, or DELETE statement, or returned by a SELECT INTO statement. The %ROWCOUNT yields zero when a
Using EXTEND To enlarge the size of a collection, use EXTEND. This process has 3 forms. The EXTEND appends one null element to a collection. And the EXTEND(n) appends n null e
If two relations R and S are joined, then the non matching tuples of both R and S are ignored in __________________.
Transactions in SQL BEGIN TRANSACTION, COMMIT, and ROLLBACK, SQL has the same syntax except for START in place of BEGIN. However, START TRANSACTION is used only for outermost
Biconditional - SQL The biconditional p ↔ q can be expressed in Tutorial D by p = q and the same is true of SQL. The question then arises as to whether, in SQL, p = q is equiv
Managing Cursors The PL/SQL uses 2 types of cursors: implicit and explicit. The PL/SQL declares a cursor implicitly for all the SQL data manipulation statements, including th
Block Structure The PL/SQL is a block-structured language. That is, the fundamental units (procedures, anonymous blocks, and functions) that make up a PL/SQL program are logi
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