1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
CREATE OR REPLACE Package PkRefDemo
Authid definer Is
-- une variable directement accessible
myvar Varchar(10);
-- procedure pour initialiser la valeur
Procedure SetVar(myvar myvar%type);
end;
/
CREATE OR REPLACE Package Body PkRefDemo
Is
Procedure SetVar(
myvar In myvar%type
) Is
Begin
-- initialise la valeur
PkRefDemo.myvar := SetVar.myvar;
End;
End;
/
CREATE OR REPLACE Procedure PRefDemo (
pvar In PkRefDemo.myvar%Type
) Is
Begin
-- reinitialise la variable de package
PkRefDemo.SetVar(Null);
--
dbms_output.put_line(Nvl(pvar,'Null'));
End;
/
Declare
l_var PkRefDemo.myvar%Type := 'Un';
Begin
PkRefDemo.SetVar('Un');
--
PRefDemo(l_var);
PRefDemo(PkRefDemo.myvar);
End;
/ |
Partager