दिलचस्प पोस्ट
JQuery, स्प्रिंग एमवीसी @ अनुरोध बॉडी और जेएसओएन – यह एक साथ काम करता है क्या x86 और x64 पर एक बफ़र के अंत में पढ़ना सुरक्षित है? क्यों यह object.defineProperty () बजाय यह है। DefineProperty () (वस्तुओं के लिए)? कैसे एक एनिमेटेड gif बनाने के लिए शुद्ध ग्रहण में, किसी और एंड्रॉइड प्रोजेक्ट में एंड्रॉइड लाइब्रेरी प्रोजेक्ट को संदर्भित करने में असमर्थ एंड्रॉइड में जावक एसएमएस या भेजे गए बॉक्स को सुनें मार्शमॉलो में संग्रहण अनुमति त्रुटि MVVM लाइट और डब्लूपीएफ – बाइंडिंग एक विन्डो के एक व्यू मॉडेल में एकाधिक उदाहरण उद्देश्य सी ++ क्या है? क्या जावा संग्रह मैं उपयोग करना चाहिए? बेस 64 डीकोड स्निपेट सी ++ में मैं पता से अक्षांश और देशांतर कैसे पा सकता हूं? पायथन लैम्ब्डास क्यों उपयोगी हैं? मैं जावास्क्रिप्ट में एक window.setInterval कैसे रोकूं? रूबी में सरणी टुकड़ा करना: अयोग्य व्यवहार के लिए स्पष्टीकरण (Rubykoans.com से लिया गया)

MySQL, MySQLi और PDO के बीच अंतर क्या है?

MySQL, MySQLi और PDO के बीच अंतर क्या है?

PHP-MySQL के साथ उपयोग करने के लिए सबसे अनुकूल कौन सा है?

वेब के समाधान से एकत्रित समाधान "MySQL, MySQLi और PDO के बीच अंतर क्या है?"

PHP से MySQL का इस्तेमाल करने के तीन लोकप्रिय तरीके हैं (अधिक)

  1. ( निषिद्ध ) MySQL फ़ंक्शंस प्रक्रियात्मक हैं और मैन्युअल से बचने का उपयोग करते हैं I
  2. MySQLi ऑब्जेक्ट-ओरिएंटेड और प्रक्रियात्मक संस्करणों के साथ, mysql फ़ंक्शन के लिए एक प्रतिस्थापन है। यह तैयार बयान के लिए समर्थन है
  3. पीडीओ (PHP डेटा ऑब्जेक्ट्स) एक अन्य डेटाबेस के साथ MySQL के समर्थन के साथ एक सामान्य डेटाबेस अमूर्त परत है। यह तैयार बयान देता है, और डेटा कैसे लौटाया जाता है, यह महत्वपूर्ण लचीलापन प्रदान करता है।

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

वे एक MySQL बैकेंड तक पहुंचने के लिए अलग-अलग एपीआई हैं

  • Mysql ऐतिहासिक एपीआई है
  • Mysqli ऐतिहासिक एपीआई का एक नया संस्करण है यह बेहतर प्रदर्शन करना चाहिए और फ़ंक्शन का बेहतर सेट होना चाहिए। इसके अलावा, एपीआई ऑब्जेक्ट ओरिएंटेड है।
  • PDO_MySQL , पीडीओ के लिए MySQL है पीडीओ को पीएचपी में पेश किया गया है, और इस परियोजना का उद्देश्य सभी डाटाबेस एक्सेस के लिए एक आम एपीआई बनाना है, इसलिए सिद्धांत रूप में आप आरडीएमएस के बीच किसी भी कोड को बदले बिना स्थानांतरित करने में सक्षम होना चाहिए (यदि आप अपने प्रश्नों में विशिष्ट RDBM फ़ंक्शन का उपयोग नहीं करते हैं ), भी ऑब्जेक्ट ओरिएंटेड

इसलिए यह निर्भर करता है कि आप किस प्रकार का कोड बनाना चाहते हैं यदि आप ऑब्जेक्ट ओरिएंटेड लेयर या सादे कार्यों को पसंद करते हैं …

मेरी सलाह होगी

  1. पीडीओ
  2. MySQLi
  3. माई एसक्यूएल

इसके अलावा मेरी भावना, mysql एपीआई संभवतः PHP भविष्य के रिलीज में हटा दी जाएगी।

3 एपीआई सुविधाओं की तुलना में एक टेबल है जब भी संभव हो तो पीएसडीओ के बाद लॉन्च किया जाने वाला मैसकिली का प्रयोग करें और भविष्य में बेहतर बनाए रखा जाएगा।

mysqli mysql का बढ़ाया संस्करण है

पीडीओ एक्सटेंशन PHP में डेटाबेस तक पहुंचने के लिए हल्के, लगातार इंटरफ़ेस को परिभाषित करता है। प्रत्येक डाटाबेस ड्राइवर जो PDO इंटरफ़ेस लागू करता है, वह डेटाबेस-विशिष्ट विशेषताओं को नियमित एक्सटेंशन कार्यों के रूप में उजागर कर सकता है।

विशेष रूप से, MySQLi एक्सटेंशन पुराने MySQL एक्सटेंशन पर निम्न अत्यंत उपयोगी लाभ प्रदान करता है ..

ओओपी इंटरफेस (प्रक्रियात्मक के अतिरिक्त) तैयार वक्तव्य समर्थन लेन-देन + संग्रहित प्रक्रिया सहायता नियक सिंटेक्स गति सुधार एन्हांस्ड डिबगिंग

पीडीओ एक्सटेंशन

PHP डेटा ऑब्जेक्ट एक्सटेंशन एक डाटाबेस एब्स्ट्रक्शन लेयर है विशेष रूप से, यह एक MySQL इंटरफ़ेस नहीं है, क्योंकि यह कई डेटाबेस इंजिन के लिए ड्राइवर प्रदान करता है (अर्थात एमईएसक्यूएल सहित)

पीडीओ का उद्देश्य एक सुसंगत एपीआई प्रदान करना है जिसका मतलब है कि जब कोई डेटाबेस इंजन बदल जाता है, तो यह दर्शाए जाने के लिए कोड परिवर्तन कम से कम होना चाहिए। जब आप पीडीओ का उपयोग कर रहे हैं, तो आपका कोड सामान्य रूप से "कई तरह के डाटाबेस इंजनों में" काम करेगा, बस उस ड्राइवर को बदल कर जो आप उपयोग कर रहे हैं

क्रॉस-डाटाबेस संगत होने के अतिरिक्त, पीडीओ भी तैयार बयान, संग्रहित प्रक्रियाओं और अधिक का समर्थन करता है, जबकि MySQL चालक का उपयोग करना।

बस हम कह सकते हैं MySQL बेहतर एक्सटेंशन, विभिन्न लाभ प्रदान करते हैं। Mysqli एक्सटेंशन आपको MySQL 4.1 और इसके बाद के संस्करण द्वारा प्रदान की जाने वाली कार्यक्षमता का उपयोग करने की अनुमति देता है।

पीएचपी डाटा ऑब्जेक्ट्स (पीडीओ) एक्सटेंशन PHP में डेटाबेस तक पहुंचने के लिए हल्के, लगातार इंटरफ़ेस को परिभाषित करता है। प्रत्येक डाटाबेस ड्राइवर जो PDO इंटरफ़ेस लागू करता है, वह डेटाबेस-विशिष्ट विशेषताओं को नियमित एक्सटेंशन कार्यों के रूप में उजागर कर सकता है। ध्यान दें कि आप पीडीओ एक्सटेंशन का उपयोग करके स्वयं किसी भी डेटाबेस फ़ंक्शन का प्रदर्शन नहीं कर सकते हैं; एक डेटाबेस सर्वर तक पहुंचने के लिए आपको डेटाबेस-विशिष्ट PDO ड्रायवर का उपयोग करना चाहिए।