Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...

what is mean by forward declaration and where we'll use it.

Answer Posted / guru

Forward Declaration means.. If you are defining a package
body having two procedures , If u want to use second
procedure in the definition of first procedure.. You have to
declare the second package with its arguments (if have)
before using in the definition of first procedure. It’s
labeled as forward declaration

OR

EX1:


DECLARE
PROCEDURE P1 IS
BEGIN
dbms_output.put_line('From procedure p1');
p2;
END P1;
PROCEDURE P2 IS
BEGIN
dbms_output.put_line('From procedure p2');
p3;
END P2;
PROCEDURE P3 IS
BEGIN
dbms_output.put_line('From procedure p3');
END P3;
BEGIN
p1;
END;

Output:
p2;
*
ERROR at line 5:
ORA-06550: line 5, column 1:
PLS-00313: 'P2' not declared in this scope
ORA-06550: line 5, column 1:
PL/SQL: Statement ignored
ORA-06550: line 10, column 1:
PLS-00313: 'P3' not declared in this scope
ORA-06550: line 10, column 1:
PL/SQL: Statement ignored

Ex2:
DECLARE
PROCEDURE P2; -- forward declaration
PROCEDURE P3;
PROCEDURE P1 IS
BEGIN
dbms_output.put_line('From procedure p1');
p2;
END P1;
PROCEDURE P2 IS
BEGIN
dbms_output.put_line('From procedure p2');
p3;
END P2;
PROCEDURE P3 IS
BEGIN
dbms_output.put_line('From procedure p3');
END P3;
BEGIN
p1;
END;

Output:
From procedure p1
From procedure p2
From procedure p3


Thanks

Guru

Is This Answer Correct ?    22 Yes 1 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

how to get @@error and @@rowcount at the same time? : Sql dba

1077


What is difference between sql and oracle?

1191


what is myisam? : Sql dba

1160


what is the difference between ereg_replace() and eregi_replace()? : Sql dba

1226


name 3 ways to get an accurate count of the number of records in a table? : Sql dba

1116


How do I find duplicates in two columns?

1262


Why are aggregate functions called so?

1012


How does sql*loader handles newline characters in a record? : aql loader

1089


difference between anonymous blocks and sub-programs.

1188


what are the types of join and explain each? : Sql dba

1085


What is anonymous block in sql?

1172


What are local and global variables and their differences?

1138


What are the usages of sql?

1099


Can 2 queries be executed simultaneously in a distributed database system?

1192


How to fetch values from testtable1 that are not in testtable2 without using not keyword?

1282