PL / SQL कोड के अंदर DDL वास्तविक आवश्यकता से अधिक अपवाद है। पार्स को संरचना सत्यापन के रूप में देखा जा सकता है, जो कि यदि आपकी संरचना निष्पादन पर बदलती है, तो खो जाती है। प्रक्रियाओं का उद्देश्य अन्य वस्तुओं (तालिकाओं, या अन्य pl / sql कोड, विचारों आदि) को फिर से पार्स किया जाना है। हर बार वस्तु परिवर्तन के आधार पर, इसे फिर से शुरू किया जाना चाहिए। इसलिए, परिवर्तन संरचना की तुलना में किसी चीज़ के पार्स किए गए कोड को सत्यापित नहीं किया जा सकता है और जैसा कि संकलित किया गया है। मामले पर विचार करें
DROP TABLE T1;
पार्स समय के दौरान, तालिका मिल जाएगी और प्रक्रिया सफलतापूर्वक संकलित की जाएगी लेकिन 1 निष्पादन पर, तालिका को गिरा दिया गया है और आपका कोड अब मान्य नहीं है (अगली बार DROP TABLE का परिणाम त्रुटि होगा)। इसी तरह, तालिका डीडीएल में कोई भी परिवर्तन करने के लिए फिर से तैयार करने की आवश्यकता होगी, इसलिए कोड पार्सिंग का लाभ खोना होगा।