2010-01-18 13 views
14

डेटाबेस ड्राइवर और डेटाबेस बोलियों के बीच क्या अंतर है?डेटाबेस ड्राइवर और डेटाबेस बोलियों के बीच अंतर

+2

आपका प्रश्न संदिग्ध है। क्या आप सभी डेटाबेस के सभी संस्करणों के बीच सभी मतभेदों की एक सूची चाहते हैं? या आप एक ड्राइवर और एक बोली के बीच अंतर जानना चाहते हैं। –

+0

ड्राइवर और एक बोली के बीच अंतर – user244634

+1

और आपको नहीं पता था कि विकिपीडिया या Google का उपयोग कैसे करें? –

उत्तर

7

मूल प्रश्न:

क्या डेटाबेस ड्राइवरों और डेटाबेस बोलियों के बीच का अंतर है?

प्रश्न संदिग्ध है; यहाँ मेरा लेना है।

driver डेटाबेस तक पहुंचने के लिए सॉफ़्टवेयर का एक टुकड़ा है।

dialect एक क्वेरी भाषा (यानी एक प्रोटोकॉल) पर एक संस्करण है जो डेटाबेस तक पहुंचने के लिए उपयोग किया जाता है। डेटाबेस सॉफ़्टवेयर के आधार पर, यह कई अलग-अलग dialects का समर्थन कर सकता है।

आईई। सभी sql बराबर नहीं बनाए गए हैं ;-)

8

डेटाबेस ड्राइवर एक प्रोग्राम है जिसके लिए डेटाबेस से कनेक्ट करने के लिए प्रोटोकॉल (ओडीबीसी, जेडीबीसी) लागू होता है। यह एक एडाप्टर है जो एक विशिष्ट विक्रेता कार्यान्वयन के लिए एक सामान्य इंटरफ़ेस को जोड़ता है, जैसे कि प्रिंटर ड्राइवर आदि।

एक डेटाबेस बोली प्लेटफ़ॉर्म स्वतंत्र सॉफ़्टवेयर (जेपीए, हाइबरनेट, आदि) के लिए कॉन्फ़िगरेशन सेटिंग है जो इस तरह के सॉफ़्टवेयर को अनुवाद करने की अनुमति देती है विक्रेता विशिष्ट डीडीएल, डीएमएल में जेनेरिक एसक्यूएल स्टेटमेंट्स।

ऐसा प्रतीत होता है कि "डेटाबेस बोली" का उपयोग अन्य प्रकार के डेटाबेस प्रोग्रामों द्वारा किया जा सकता है ताकि कुछ अलग हो लेकिन व्यापक रूप से जो मैंने अभी लिखा है उसके समान। यही है, "डेटाबेस ड्राइवर" एक स्वीकृत उद्योग शब्द है जिसमें एक एकल ठोस अर्थ होता है जबकि "डेटाबेस बोली" समान रूप से पहचाना नहीं जाता है और इसलिए विभिन्न संदर्भों में विभिन्न अवधारणाओं को संदर्भित करता है।

4

यह प्रश्न अस्पष्ट नहीं है, मुझे लगता है कि इसे सही ढंग से उत्तर दिया जाना चाहिए।

हम अक्सर एक निश्चित डेटाबेस प्रबंधन प्रणाली के साथ एक निश्चित अनुप्रयोग को जोड़ने के लिए डायलेक्ट और ड्राइवर्स का उपयोग करते हैं।

उदाहरण के लिए: grails में/जावा

हम एक बोली संपत्ति को परिभाषित इस types

MySQL5Dialect, MySQLInnoDBDialect, MySQLMyISAMDialect 

बोली में से एक होने के रूप में mysql से कनेक्ट करने के किसी अंग्रेज़ी शब्द किसी भाषा के संस्करण का मतलब है कि है । उदाहरण के लिए, अंग्रेजी की कई बोलीभाषाएं हैं। उदाहरण के लिए, ब्रिटिश अंग्रेजी और अमेरिकी अंग्रेजी।

डेटाबेस के संदर्भ में, लोग एसक्यूएल की बोलीभाषाओं के बारे में बात करते हैं। एसक्यूएल मुख्य भाषा है जैसे अंग्रेजी है। फिर डेटाबेस विशिष्ट वाक्यविन्यास के साथ बोलीभाषाएं हैं। उदाहरण के लिए, ओरेकल में राउनम कीवर्ड है। Refe

और, डेटाबेस की बोली केवल एक शब्द है जो SQL डेटाबेस की विशिष्ट विशेषताओं को परिभाषित करता है जो उस डेटाबेस तक पहुंचने पर उपलब्ध हैं।

Example of usage in application side 

dataSource { 
    pooled = true 
    jmxExport = true 
    driverClassName = "com.mysql.jdbc.Driver" 
    dialect = "org.hibernate.dialect.MySQL5InnoDBDialect" 
    username = "root" 
    password = "root" 
} 

N.B। डायलेक्ट डेटाबेस से कनेक्ट करना अनिवार्य है।

एक और हाथ, डेटाबेस ड्राइवर एक कार्यक्रम एक कार्य केंद्र या सर्वर पर स्थापित है कि सिस्टम पर प्रोग्राम एक डीबीएमएस के साथ बातचीत करने की अनुमति है। [Refer]

जावा में हमारे पास एक संबंधपरक डेटाबेस से कनेक्ट करने के लिए जेडीबीसी/ओडीबीसी ड्राइवर विनिर्देश कहा जाता है।

चालक वास्तविक डेटाबेस और उपभोग करने वाले अनुप्रयोग (माइस्क्ल और जावा एप्लिकेशन) के बीच संचार को संभालने के लिए लिखी गई फ़ाइल या क्लास फ़ाइल की तरह कुछ है।

MySQL अनुप्रयोगों और उपकरण है कि उद्योग के मानकों ODBC और JDBC.After के साथ संगत आप ड्राइवर फ़ाइल है साथ MySQL का उपयोग कर के लिए मानक डेटाबेस ड्राइवर कनेक्टिविटी प्रदान करता है आप lib फ़ोल्डर पर रखें और उसके बाद आपको कॉल करेंगे या संबद्ध करना इस तरह। आपको डेटाबेस से कनेक्ट करने के लिए URL, DATABASENAME, पोर्ट, पासवर्ड .. निर्दिष्ट करने की आवश्यकता है।

dataSource { 

    //url = "jdbc:h2:mem:devDb;MVCC=TRUE;LOCK_TIMEOUT 
       =10000;DB_CLOSE_ON_EXIT=FALSE" 
     databasename = "libdoc" 
     url = "jdbc:mysql://localhost:3306/"+databasename 
    } 

एलोहा, हैप्पी लर्निंग डे!

संबंधित मुद्दे