মাইএসকিউএল, মাইএসকিউলি এবং পিডিওর মধ্যে পার্থক্য কী? [বন্ধ]


128

মাইএসকিউএল, মধ্যে পার্থক্য কি MySQLi এবং PDO ?

কোনটি পিএইচপি-মাইএসকিউএল ব্যবহারের জন্য সবচেয়ে উপযুক্ত?

উত্তর:


100

পিএইচপি থেকে মাইএসকিউএল ব্যবহার করার জন্য তিনটিরও বেশি জনপ্রিয় উপায় রয়েছে। এটি কিছু বৈশিষ্ট্য / পার্থক্যগুলির রূপরেখা দেয় পিএইচপি: একটি এপিআই বেছে নেওয়া :

  1. ( প্রেরিত ) মাইএসকিএল ফাংশনগুলি প্রক্রিয়াগত এবং ম্যানুয়াল এস্কেপিং ব্যবহার করে।
  2. MySQLi মাইএসকিউএল কাজগুলির জন্য একটি প্রতিস্থাপন, অবজেক্ট ওরিয়েন্টেড এবং পদ্ধতিগত সংস্করণের সাথে হয়। এটি প্রস্তুত বিবৃতি জন্য সমর্থন আছে।
  3. পিডিও (পিএইচপি ডেটা অবজেক্টস) একটি সাধারণ ডাটাবেস বিমূর্ত স্তর যা অন্য অনেক ডাটাবেসের মধ্যে মাইএসকিউএল সমর্থন করে। এটি প্রস্তুত বিবৃতি এবং কীভাবে ডেটা ফেরত দেয় তা উল্লেখযোগ্য নমনীয়তা সরবরাহ করে।

আমি প্রস্তুত বিবৃতি দিয়ে পিডিও ব্যবহার করার পরামর্শ দেব। এটি একটি সু-পরিকল্পিত এপিআই এবং প্রয়োজনে আপনাকে আরও সহজেই অন্য একটি ডাটাবেসে ( ওডিবিসি সমর্থন করে এমন কোনওগুলি সহ ) যেতে দেবে।


9
প্রায়শই বিভ্রান্তি থাকে যে পদ্ধতিগত জন্য আপনাকে মাইএসকিএল _ * () ফাংশন ব্যবহার করতে হবে যেখানে ও আপনি মাইএসকিলি ব্যবহার করেন! আসল বিষয়টি হ'ল মাইকিকিলি সম্পূর্ণরূপে মাইএসকিএল এর প্রাথমিক (পিএইচপি 4) বাস্তবায়ন করে। পদ্ধতিগত শৈলী এবং মাইস্ক্লি সহ ওও উভয়ই ব্যবহার করা সম্ভব।
প্যাট্রিক আলার্ট

@ পেট্রিক, ধন্যবাদ আমি এই সংশোধন করেছি।
ম্যাথু ফ্ল্যাশেন

46

এগুলি মাইএসকিউএল ব্যাকএন্ড অ্যাক্সেস করার জন্য আলাদা আলাদা এপিআই

  • মাইএসকিউএল ঐতিহাসিক এপিআই
  • Mysqli ঐতিহাসিক API- এর একটি নতুন সংস্করণ। এটি আরও ভাল পারফরম্যান্স এবং ফাংশন একটি ভাল সেট করা উচিত। এছাড়াও, এপিআই হ'ল অবজেক্ট-ওরিয়েন্টেড।
  • PDO_MySQL , PDO এর জন্য MySQL। পিডিও পিএইচপি-তে প্রবর্তিত হয়েছে, এবং প্রকল্পটির লক্ষ্য হল সমস্ত ডাটাবেস অ্যাক্সেসের জন্য একটি সাধারণ এপিআই তৈরি করা, সুতরাং তাত্ত্বিকভাবে আপনার কোনও কোড পরিবর্তন না করেই আরডিএমএসের মধ্যে স্থানান্তরিত করতে সক্ষম হওয়া উচিত (যদি আপনি আপনার প্রশ্নের মধ্যে নির্দিষ্ট আরডিবিএম ফাংশন ব্যবহার না করেন) ), এছাড়াও অবজেক্ট-ওরিয়েন্টেড।

সুতরাং এটি নির্ভর করে আপনি কোন ধরণের কোড তৈরি করতে চান। আপনি যদি অবজেক্ট-ভিত্তিক স্তর বা প্লেইন ফাংশন পছন্দ করেন ...

আমার পরামর্শ হবে

  1. PDO
  2. MySQLi
  3. মাইএসকিউএল

এছাড়াও আমার অনুভূতি, মাইএসকিএল এপিআই সম্ভবত ভবিষ্যতের প্রকাশে মুছে ফেলা হবে PHP


3
এটি আর কোনও অনুভূতি নয়: পিএইচপি 7 পিছুও এবং মাইএসকিলি রেখে মাইএসকিএল এপিআই সরিয়েছে
ম্যানুয়েল

3

mysqli হ'ল mysql এর বর্ধিত সংস্করণ।

পিডিও এক্সটেনশন পিএইচপি-তে ডেটাবেস অ্যাক্সেসের জন্য একটি হালকা ওজনের, সামঞ্জস্যপূর্ণ ইন্টারফেসটিকে সংজ্ঞায়িত করে। PDO ইন্টারফেস প্রয়োগ করে এমন প্রতিটি ডাটাবেস ড্রাইভার নিয়মিত এক্সটেনশন ফাংশন হিসাবে ডাটাবেস-নির্দিষ্ট বৈশিষ্ট্যগুলি প্রকাশ করতে পারে।


4
ম্যানুয়াল ফাইল থেকে অনুলিপি খুব দরকারী নয়।
XuDing

3

বিশেষত, মাইএসকিউএল এক্সটেনশানটি পুরানো মাইএসকিউএল এক্সটেনশনের উপরের নীচে অত্যন্ত কার্যকর সুবিধা প্রদান করে ..

ওওপি ইন্টারফেস (প্রক্রিয়াগত ছাড়াও) প্রস্তুত বিবৃতি সমর্থন লেনদেন

পিডিও এক্সটেনশন

পিএইচপি ডেটা অবজেক্ট এক্সটেনশান একটি ডেটাবেস অ্যাবস্ট্রাকশন স্তর। বিশেষত এটি কোনও মাইএসকিউএল ইন্টারফেস নয়, কারণ এটি অনেকগুলি ডাটাবেস ইঞ্জিনের জন্য ড্রাইভার সরবরাহ করে (অবশ্যই এমওয়াইএসকিউএল সহ)।

PDO লক্ষ্য করে একটি ধারাবাহিক এপিআই সরবরাহ করবে যার অর্থ যখন কোনও ডাটাবেস ইঞ্জিন পরিবর্তন করা হয় তখন এর প্রতিবিম্বিত করার জন্য কোড পরিবর্তনগুলি সর্বনিম্ন হওয়া উচিত। PDO ব্যবহার করার সময়, আপনার কোডটি সাধারণত আপনি ব্যবহার করছেন এমন ড্রাইভার পরিবর্তন করে অনেকগুলি ডাটাবেস ইঞ্জিন জুড়ে "কেবল" কাজ করবে।

ক্রস-ডাটাবেস সামঞ্জস্যপূর্ণ হওয়ার পাশাপাশি, পিডিও মাইএসকিউএল ড্রাইভার ব্যবহার করার সময় প্রস্তুত বিবৃতি, সঞ্চিত পদ্ধতি এবং আরও অনেক কিছু সমর্থন করে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.