स्थिर SQL
स्टेटिक एसक्यूएल उन एसक्यूएल स्टेटमेंट्स को संदर्भित करता है जो निश्चित हैं और एप्लिकेशन में हार्ड कोड किए जा सकते हैं। चूंकि स्थैतिक sql निश्चित प्रश्न होते हैं, इन कथनों का विश्लेषण और अनुकूलन किया जा सकता है और सुरक्षा उद्देश्य के लिए किसी विशिष्ट प्रबंधन की आवश्यकता नहीं होती है।
डायनामिक SQL
डायनेमिक एसक्यूएल उन एसक्यूएल स्टेटमेंट को संदर्भित करता है जो उपयोगकर्ता के इनपुट के आधार पर गतिशील रूप से उत्पन्न होते हैं और एप्लिकेशन में चलते हैं। डायनेमिक Sqls सामान्य और लचीले अनुप्रयोगों को विकसित करने में मदद करता है। डायनेमिक SQL को अधिक अनुमतियों और सुरक्षा प्रबंधन की आवश्यकता हो सकती है और एक दुर्भावनापूर्ण उपयोगकर्ता खतरनाक कोड भी बना सकता है।
स्टेटिक रूटिंग और डायनेमिक रूटिंग के बीच कुछ महत्वपूर्ण अंतर निम्नलिखित हैं।
वरिष्ठ। नहीं. | कुंजी | <वें शैली ="पाठ-संरेखण:केंद्र;">स्थिर SQL <वें शैली="पाठ्य-संरेखण:केंद्र;">गतिशील SQL||
---|---|---|---|
1 | डेटाबेस एक्सेस | स्टेटिक SQL में, डेटाबेस एक्सेस प्रक्रिया स्टेटमेंट में पूर्व निर्धारित होती है। | डायनेमिक SQL में, डेटाबेस को कैसे एक्सेस किया जाएगा, यह केवल रन टाइम पर निर्धारित किया जा सकता है। |
2 | दक्षता | स्टेटिक SQL स्टेटमेंट अधिक तेज़ और कुशल होते हैं। | डायनामिक SQL स्टेटमेंट कम कुशल होते हैं। |
3 | संकलन | स्थिर SQL कथन संकलन समय पर संकलित किए जाते हैं। | डायनामिक SQL स्टेटमेंट रन टाइम पर संकलित किए जाते हैं। |
4 | आवेदन योजना | आवेदन योजना पार्सिंग, सत्यापन, अनुकूलन और पीढ़ी संकलन समय गतिविधियां हैं। | एप्लिकेशन प्लान पार्सिंग, सत्यापन, अनुकूलन और पीढ़ी रन टाइम गतिविधियां हैं। |
5 | मामलों का उपयोग करें | स्टेटिक SQL का उपयोग समान रूप से वितरित डेटा के मामले में किया जाता है। | डायनामिक SQL का उपयोग असमान रूप से वितरित डेटा के मामले में किया जाता है। |
6 | डायनामिक स्टेटमेंट | EXECUTE IMMEDIATE, EXECUTE, PREPARE जैसे स्टेटमेंट का उपयोग नहीं किया जाता है। | EXECUTE IMMEDIATE, EXECUTE, PREPARE जैसे स्टेटमेंट का उपयोग किया जाता है |
7 | लचीलापन | स्टेटिक SQL कम लचीला है। | डायनामिक SQL अत्यधिक लचीला है। |