एंबेडेड एसक्यूएल
एंबेडेड एसक्यूएल एक प्रोग्रामिंग भाषा की कम्प्यूटिंग शक्ति और एसक्यूएल की डेटाबेस परिवर्तन क्षमताओं को संयोजित करने की एक विधि है। एंबेडेड एसक्यूएल कथन (प्रोग्रामिंग) होस्ट भाषा के प्रोग्राम सोर्स कोड के साथ इनलाइन लिखे गए एसक्यूएल स्टेटमेंट हैं। एम्बेडेड एसक्यूएल स्टेटमेंट को एम्बेडेड एसक्यूएल प्रीप्रोसेसर द्वारा पदच्छेद किया जाता है और कोड पुस्तकालय (कंप्यूटिंग) में होस्ट-भाषा कॉल साइट द्वारा प्रतिस्थापित किया जाता है। प्रीप्रोसेसर से आउटपुट को होस्ट कंपाइलर द्वारा संकलक संकलित किया जाता है। यह प्रोग्रामर को C/C++, कोबोल और फोरट्रान जैसी किसी भी संख्या में लिखे गए प्रोग्राम में एसक्यूएल स्टेटमेंट एम्बेड करने की अनुमति देता है। यह एसक्यूएल-व्युत्पन्न प्रोग्रामिंग भाषाओं से भिन्न है जो पीएल/एसक्यूएल और ट्रांजैक्ट-एसक्यूएल (टी-एसक्यूएल) जैसे अलग-अलग प्रीप्रोसेसरों से नहीं निकलती हैं।
एसक्यूएल मानक समिति ने एम्बेडेड एसक्यूएल मानक को दो चरणों में परिभाषित किया: मॉड्यूल भाषा नामक एक औपचारिकता को परिभाषित किया गया था, फिर एम्बेडेड एसक्यूएल मानक मॉड्यूल भाषा से प्राप्त गया था।[1] एसक्यूएल मानक एसक्यूएल की एम्बेडिंग को एम्बेडेड एसक्यूएल के रूप में परिभाषित करता है और जिस भाषा में एसक्यूएल क्वेरी एम्बेडेड होती हैं उसे होस्ट भाषा कहा जाता है। उदाहरण के लिए, होस्ट भाषा C और एम्बेडेड एसक्यूएल को ओरेकल और साइबेस डेटाबेस प्रबंधन सिस्टम में प्रो*C,, इन्फोर्मिक्स में ईएसक्यूएल/सी और पोस्टग्रेएसक्यूएल डेटाबेस प्रबंधन सिस्टम में ईसीपीजी कहा जाता है। एसक्यूएल को पीएचपी आदि भाषाओं में भी एम्बेड किया जा सकता है।
एसक्यूएल मानक 2016 खरीद के माध्यम से उपलब्ध है और इसमें अध्याय 21 एंबेडेड एसक्यूएल और इसके सिंटैक्स नियम सम्मलित हैं।[2]
डेटाबेस सिस्टम जो एम्बेडेड एसक्यूएल का समर्थन करते हैं
अल्टीबेस
- सी/सी++
- एपीआरइ अपने डीबीएमएस सर्वर के लिए अल्टिबेस (हाइब्रिड डेटाबेस) कॉर्प द्वारा प्रदान किया गया एक एम्बेडेड एसक्यूएल प्रीकंपाइलर है।
आईबीएम डीबी2
लिनक्स, यूनिक्स और विंडोज़ के लिए आईबीएम डीबी 2 सी, सी++, जावा, कोबोल, फोरट्रान और आरइएक्सएक्स के लिए एम्बेडेड एसक्यूएल का समर्थन करता है, चूंकि फोरट्रान और आरइएक्सएक्स के लिए समर्थन हटा दिया गया है।[3]
आईबीएम इनफॉर्मिक्स
लिनक्स, यूनिक्स और विंडोज़ के लिए इनफॉर्मिक्स आईबीएम संस्करण 14.10 C के लिए एम्बेडेड एसक्यूएल का समर्थन करता है। [4]
माइक्रोसॉफ्ट एसक्यूएल सर्वर
- सी/सी++
- सी के लिए एंबेडेड एसक्यूएल को माइक्रोसॉफ्ट एसक्यूएल सर्वर 2008 के रूप में हटा दिया गया है, चूंकि उत्पाद के पुराने संस्करण इसका समर्थन करते हैं।[5]
माइमर एसक्यूएल
लिनक्स, मैक ओएस, ओपन वीएमएस और विंडोज़ के लिए माइमर एसक्यूएल एम्बेडेड एसक्यूएल का समर्थन करता है।[6]
- सी/सी++
- C/C++ के लिए एंबेडेड एसक्यूएल लिनक्स, मैक ओएस, ओपन वीएमएस और विंडोज़ पर समर्थित है।
- कोबोल
- कोबोल के लिए एंबेडेड एसक्यूएल ओपनवीएमएस पर समर्थित है।
- फोरट्रान
- फोरट्रान के लिए एंबेडेड एसक्यूएल ओपनवीएमएस पर समर्थित है।
ओरेकल डेटाबेस
- एडा (प्रोग्रामिंग भाषा)
- प्रो*एडीए को संस्करण 7.3 में ओरेकल कॉर्पोरेशन द्वारा आधिकारिक स्तर पर समर्थनहीन कर दिया गया था। ओरेकल8 से प्रारंभ करके, प्रो*एडीए को एसक्यूएल *मॉड्यूल द्वारा प्रतिस्थापित किया गया था, लेकिन ऐसा प्रतीत होता है कि तब से इसे अद्यतन नहीं किया गया है।[7] एसक्यूएल *मॉड्यूल एक मॉड्यूल भाषा है जो एम्बेडेड एसक्यूएल से भिन्न प्रोग्रामिंग विधि प्रदान करती है। एसक्यूएल *मॉड्यूल एडीए के लिए एडीए83 भाषा मानक का समर्थन करता है।
- सी/सी++
- ओरेकल8 के साथ प्रो*सी प्रो*सी/सी++ बन गया। प्रो*सी/सी++ वर्तमान में ओरेकल डेटाबेस 11g के रूप में समर्थित है।
- कोबोल
- प्रो*कोबोल वर्तमान में ओरेकल डेटाबेस 11g के रूप में समर्थित है।
- फोरट्रान
- प्रो*फोरट्रान को अब ओरेकल8 के रूप में अपडेट नहीं किया गया है, लेकिन ओरेकल बग की रिपोर्ट और सुधार के रूप में पैच रिलीज़ प्रचलन करना प्रचलित रखेगा।[8]
- पास्कल (प्रोग्रामिंग भाषा)
- प्रो*पास्कल को ओरेकल8 के साथ प्रकाशित नहीं किया गया था।[8]
- पीएल/आई
- प्रो*पीएल/आई को ओरेकल8 के साथ प्रकाशित नहीं किया गया था। चूंकि, ओरेकल प्रीकंपाइलर्स गाइड का प्रो*पीएल/आई अनुपूरक 11g रिलीज़ होने तक ओरेकल डॉक्यूमेंटेशन लाइब्रेरी में प्रदर्शित होता रहा। प्रकाशित 12सी के अनुसार, प्रो*पीएल/आई को ओरेकल डॉक्यूमेंटेशन लाइब्रेरी से हटा दिया गया है।[8]
पोस्टग्रेएसक्यूएल
- सी/सी++
- ईसीपीजी संस्करण 6.3 से पोस्टग्रेएसक्यूएल का भाग है।
- कोबोल
- कोबोल-आईटी अब पोस्टग्रेएसक्यूएल के लिए कोबोल प्रीकंपाइलर वितरित कर रहा है[citation needed]
- माइक्रो फोकस अपने ओपनईएसक्यूएल प्रीप्रोसेसर के माध्यम से समर्थन प्रदान करता है[citation needed]
एसएपी साइबेस
सैप साइबेस एएसई15.7 सॉफ़्टवेयर डेवलपर किट साइबेस के भाग के रूप में C और कोबोल के लिए एम्बेडेड एसक्यूएल का समर्थन करता है।[9]
सैप साइबेस एसक्यूएल एनीवेयर, एसक्यूएल एनीवेयर डेटाबेस प्रबंधन प्रणाली एसक्यूएल एनीवेयर के भाग के रूप में C और C++ के लिए एम्बेडेड एसक्यूएल का समर्थन करता है।[10]
सैप साइबेस आईक्यू, साइबेस आईक्यू डेटाबेस प्रबंधन प्रणाली साइबेस आईक्यू के भाग के रूप में C और C++ के लिए एम्बेडेड एसक्यूएल का समर्थन करता है।[11]
डोमेन-विशिष्ट भाषाओं के माध्यम से एंबेडेड एसक्यूएल
- भाषा एकीकृत क्वेरी-को-एसक्यूएल एसक्यूएल जैसी भाषा को सीएलआई भाषाओं में एम्बेड करता है।
- जेपीए जावा पर्सिस्टेंस एपीआई में मानदंड एपीआई के माध्यम से एक एसक्यूएल जैसी भाषा को एम्बेड करता है।
- जावा ऑब्जेक्ट ओरिएंटेड क्वेरीइंग एक एसक्यूएल जैसी भाषा को जावा (प्रोग्रामिंग भाषा) में एम्बेड करता है।
यह भी देखें
- भाषा बंधन
- पीएल/एसक्यूएल
- प्रो*सी/सी++
- एसक्यूएल/ओएलबी
- एसक्यूएल पीएल
- ट्रांजैक्ट-एसक्यूएल
संदर्भ
- ↑ "The Module Language Concept". SQL*Module for Ada Programmer's Guide, Release 8.0, Chapter 1. Introduction to SQL*Module. Oracle Corporation. Retrieved 2008-07-14.
- ↑ "SQL Standard 2016 Chapter 21 Embedded SQL". ISO/IEC 9075-2:2016 Information technology — Database languages — SQL — Part 2: Foundation (SQL/Foundation). ISO. Retrieved 2023-03-30.
- ↑ "DB2 Database for Linux, UNIX and Windows". Developing Embedded SQL Applications. IBM. Retrieved 2009-04-10.
- ↑ "Informix Dynamic Server". IBM® Informix® ESQL/C. IBM. Retrieved 2020-03-31.
- ↑ "Deprecated Database Engine Features in SQL Server 2008". SQL Server 2008 Books Online (March 2009). Microsoft. Retrieved 2009-04-10.
- ↑ "एंबेडेड एसक्यूएल". Mimer SQL Programmer's Manual latest version, एंबेडेड एसक्यूएल. Mimer SQL.
- ↑ "Ada Support in Version 8". Oracle9i Database Migration, Release 2 (9.2), Chapter 5. Compatibility and Interoperability. Oracle Corporation. Retrieved 2008-07-14.
- ↑ 8.0 8.1 8.2 "Language Alternatives". Pro*COBOL Precompiler Programmer's Guide, Release 8.0, Chapter 1. Introduction. Oracle Corporation. Retrieved 2008-07-14.
- ↑ "EmbeddedSQL". SAP Sybase Products. SAP Sybase. Retrieved 2012-09-05.
- ↑ "SAP Sybase SQL Anywhere". SAP Sybase Products. SAP Sybase. Archived from the original on 2013-05-01. Retrieved 2013-05-02.
- ↑ "SAP Sybase IQ". SAP Sybase Products. SAP Sybase. Archived from the original on 2013-05-04. Retrieved 2013-05-02.