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.
Main features of PL/SQL A good way to get familiar with PL/SQL is to look at a sample program. The below program processes an order for tennis rackets. At first, it declares a
(a) What are decision support systems, and what role do they play in the business environment? (b) Data warehousing is defined as "a subject-oriented, integrated, non-volatile c
UTL_FILE: The Package UTL_FILE permits your PL/SQL programs to read & write operating system (OS) text files. It gives a restricted version of the standard OS stream file I/O,
Case Sensitivity Similar to all the identifiers, the variables, the names of constants, and parameters are not case sensitive. For illustration, PL/SQL considers the following n
Variable Declaration - SQL SQL's support for variables is very similar to Tutorial D's, except that the syntax for creating persistent variables-base tables-is quite differen
Definition of CROSS JOIN - SQL Let s = t1 CROSS JOIN t2, where t1 and t2 are table expressions optionally accompanied by range variables. Then: Note: Here T denotes Table
Number Types The Number types permit you to store the numeric data (real numbers, integers, and floating-point numbers), show quantities, and do computations. BINARY_INTEG
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
Use the NOCOPY Compiler Hint By default, the OUT and IN OUT parameters are passed by the value i.e. the value of an IN OUT actual parameter is copied into the corresponding fo
DECLARE : This keyword signals the beginning of the declarative section of the PL/SQL block, that contains local declarations. The Items declared locally exist only within the
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