पैकेज इनिशियलाइज़ेशन सेक्शन जैसा कि नाम से पता चलता है, पैकेज को इनिशियलाइज़ करते समय निष्पादित किया जाता है। यह तब होता है जब सत्र स्थापित होने के बाद या पैकेज (पुनः) संकलित होने के बाद पैकेज से पहली प्रक्रिया/कार्य निष्पादित किया जाता है। इसका उद्देश्य पैकेज की वैश्विक स्थिति को इनिशियलाइज़ करना है जिसका उपयोग सत्र के जीवनकाल के दौरान किया जा सकता है। सभी पैकेज वैश्विक चर रखे जाते हैं और आप उन्हें बाद में एक्सेस कर सकते हैं।
उदाहरण:
example@sqldat.com_pdb_tcp> CREATE OR REPLACE PACKAGE test_package
2 IS
3 PROCEDURE foo;
4 END;
5 /
Package created.
example@sqldat.com_pdb_tcp> CREATE OR REPLACE PACKAGE BODY test_package
2 IS
3 PROCEDURE foo
4 IS
5 BEGIN
6 DBMS_OUTPUT.PUT_LINE('Procedure executed. ');
7 END;
8
9 BEGIN
10 DBMS_OUTPUT.PUT_LINE('Package initialized. ');
11 END;
12 /
Package body created.
example@sqldat.com_pdb_tcp> EXEC test_package.foo
Package initialized.
Procedure executed.
PL/SQL procedure successfully completed.
example@sqldat.com_pdb_tcp> EXEC test_package.foo
Procedure executed.
PL/SQL procedure successfully completed.
example@sqldat.com_pdb_tcp>
आप देखते हैं कि पैकेज संकलित होने के बाद आरंभीकरण अनुभाग निष्पादित किया जाता है जब प्रक्रिया foo निष्पादित किया जाता है। पैकेज को अब इनिशियलाइज़ किया गया है। foo . का कोई भी अनुवर्ती निष्पादन केवल प्रक्रिया निष्पादित करता है।