What is the difference between stored procedure and package on fatching records?


If that true Stored Procedure will fetch all the selected records at once to the calling program but Package will fetch record by record of the selected to the calling program (like return a record to calling program upon request) ?

In other word, Stored Procedure is use for single record return but package is used for multiple record return. Am I right ??



Ans1:

No. Not at all.

You cannot call a package. You can call a package procedure, however, but a package procedure does not differ from a separately stored procedure in any way similar to what you have mentioned.

Also, a procedure does not implicitly fetch any records. You will have to do that through implicit or explicit cursors.

Maybe I don't understand at all what you are trying to do? Please post an example.

Roy Brokvam



Ans2:

I think your confusion lies with the performance advatage packages offer over stad-alone procedures/functions.

Say you have functions A and B, and that A calls B. If they are stand alone functions. Then database loads A when it's executed, then later it loads B when A's code refers to it. Hence, 2 IO's.

Packages load all their procedures at once. So if A and B are placed in the same package, then executing A loads B by default. So only 1 IO...

Bert Scalzo
DBA, EDS
 

Hosted by www.Geocities.ws

1