Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

SQL और PL/SQL के बीच अंतर

SQL बनाम PL/SQL: मुख्य अंतर

SQL (स्ट्रक्चर्ड क्वेरी लैंग्वेज) डेटाबेस के लिए मानक घोषणात्मक भाषा है। PL/SQL (प्रोसीजरल लैंग्वेज/एसक्यूएल) Oracle का प्रक्रियात्मक विस्तार है जो SQL में प्रोग्रामिंग निर्माण जोड़ता है।

तुलना तालिका

क्र.सं. पहलू SQL PL/SQL
1 परिभाषा डेटाबेस के लिए स्ट्रक्चर्ड क्वेरी लैंग्वेज डेटाबेस के लिए SQL का उपयोग करने वाली प्रोग्रामिंग भाषा
2 चर कोई चर नहीं चर, डेटा प्रकार, स्थिरांक हैं
3 नियंत्रण संरचनाएं कोई FOR लूप, IF, आदि नहीं FOR/WHILE लूप, IF नियंत्रण, अपवाद प्रबंधन
4 संचालन एक समय में एकल संचालन निष्पादित करता है एक ब्लॉक में एकाधिक संचालन निष्पादित कर सकता है
5 भाषा प्रकार घोषणात्मक भाषा प्रक्रियात्मक भाषा
6 एम्बेडिंग PL/SQL ब्लॉक में एम्बेड किया जा सकता है SQL कोड में भी एम्बेड किया जा सकता है
7 इंटरेक्शन डेटाबेस सर्वर के साथ सीधे इंटरैक्ट करता है डेटाबेस सर्वर के साथ सीधे इंटरैक्ट नहीं करता
8 उन्मुखीकरण डेटा-उन्मुख भाषा एप्लिकेशन-उन्मुख भाषा
9 उद्देश्य क्वेरी लिखने, DDL/DML निष्पादित करने के लिए प्रोग्राम ब्लॉक, फ़ंक्शन, प्रोसीजर, ट्रिगर, पैकेज लिखने के लिए

SQL विशेषताएं

  • सेट-आधारित संचालन: एक स्टेटमेंट में पंक्तियों के सेट पर काम करता है
  • घोषणात्मक: क्या चाहिए बताता है, कैसे नहीं
  • मानक: ANSI/ISO मानक, सभी RDBMS पर पोर्टेबल
  • एटॉमिक स्टेटमेंट: प्रत्येक स्टेटमेंट स्वतंत्र है

PL/SQL विशेषताएं

  • ब्लॉक संरचना: DECLARE, BEGIN, EXCEPTION, END
  • चर और प्रकार: स्केलर, रिकॉर्ड, संग्रह, कर्सर
  • नियंत्रण प्रवाह: IF, CASE, LOOP, WHILE, FOR, GOTO
  • अपवाद प्रबंधन: BEGIN...EXCEPTION...END
  • मॉड्यूलर इकाइयाँ: प्रोसीजर, फ़ंक्शन, पैकेज, ट्रिगर, प्रकार
  • प्रदर्शन: नेटवर्क राउंड-ट्रिप कम करता है

कोड तुलना

-- SQL: एकल स्टेटमेंट
UPDATE employees SET salary = salary * 1.1 WHERE department_id = 10;

-- PL/SQL: प्रोग्राम ब्लॉक
DECLARE
    v_dept_id NUMBER := 10;
    v_pct NUMBER := 0.10;
    v_updated NUMBER;
BEGIN
    UPDATE employees 
    SET salary = salary * (1 + v_pct) 
    WHERE department_id = v_dept_id;
    
    v_updated := SQL%ROWCOUNT;
    DBMS_OUTPUT.PUT_LINE(v_updated || ' rows updated');
    
    IF v_updated = 0 THEN
        RAISE_APPLICATION_ERROR(-20001, 'No employees in dept ' || v_dept_id);
    END IF;
END;

अन्य डेटाबेस में समकक्ष

डेटाबेसप्रक्रियात्मक भाषा
OraclePL/SQL
SQL ServerT-SQL
PostgreSQLPL/pgSQL
MySQLMySQL Stored Programs
DB2SQL PL
  1. HDG Explains: SQL, T-SQL, MSSQL, PL/SQL, और MySQL क्या है? HDG Explains: SQL, T-SQL, MSSQL, PL/SQL, और MySQL क्या है?

    वेब पर इतनी सारी डायनामिक वेबसाइटें इस तथ्य के कारण पाई जाती हैं कि कंटेंट को डेटाबेस के माध्यम से संभाला जाता है। डेटाबेस प्रबंधन के लिए इस तरह की प्रक्रिया को तर्कसंगत बनाने के लिए एक संरचनात्मक प्रणाली की आवश्यकता होती है। ऐसी ही एक प्रणाली SQL है। SQL का अर्थ Structured Query Language है और यह M

  1. - SQL में ALTER और UPDATE कमांड के बीच अंतर

    इस पोस्ट में, हम SQL में ALTER कमांड और UPDATE कमांड के बीच अंतर को समझेंगे। ALTER कमांड यह कमांड एक डेटा डेफिनिशन लैंग्वेज (DDL) है। यह संरचनात्मक स्तर पर ऑपरेशन करता है, डेटा स्तर पर नहीं। इस कमांड का उपयोग डेटाबेस में टेबल के एट्रिब्यूट्स को जोड़ने, हटाने और संशोधित करने के लिए किया जाता है। य

  1. - SQL में Inner Join और Outer Join के बीच अंतर

    इस पोस्ट में, हम SQL में इनर जॉइन और आउटर जॉइन के बीच अंतर को समझेंगे। इनर जॉइन उपयोग किया जाने वाला क्लॉज INNER JOIN और JOIN है। यह दो या अधिक टेबल के संयुक्त टुपल को लौटाता है। जब कोई एट्रिब्यूट सामान्य नहीं होते, तो परिणाम खाली होता है। यदि टुपल्स की संख्या अधिक है, तो INNER JOIN, OUTER JOIN क