--- title: ইনডেক্সডডিবি slug: Web/API/IndexedDB_API tags: - NeedsReview - ইনডেক্সডডিবি - এপিআই - ডাটাবেজ - রেফারেন্স translation_of: Web/API/IndexedDB_API ---

 ইনডেক্সডডিবি (IndexedDB) ক্লায়েন্ট-সাইড স্টোরেজ এর জন্য একটি এপিআই যা গুরুত্বপূর্ণ পরিমান গাঠনিক ডাটা জমা রাখে এবং যা ইনডেক্স এর সাহায্যে উক্ত ডাটার উপর উচ্চ কর্মক্ষমতাসম্পন্ন  অনুসন্ধান চালাতে পারে।যেখানে ডোম স্টোরেজ  উপকারী ক্ষুদ্র পরিমান ডাটা জমা রাখার জন্য, এটি কম উপকারী বড় আকারের গাঠনিক ডাটা জমা করার জন্য, সেক্ষেত্রে ইনডেক্সডডিবি(indexedDB) একটি সমাধান প্রদান করে।

এই পেজটি এপিআই অবজেক্টসমূহের টেকনিক্যাল বিবরণগুলোর  প্রবেশপথ হিসেবে কাজ করে। যদি আপনার প্রাথমিক বই এর দরকার হয় তবে আপনার  ইনডেক্সডডিবির প্রাথমিক ধারণা  দেখা উচিত। আরও বিস্তারিতের জন্য দেখুন  ইনডেক্সডডিবির ব্যবহার

ইনডেক্সডডিবি(IndexedDB)  সিনক্রোনাস এবং এসিনক্রোনাস এক্সেস এর জন্য পৃথক এপিআই প্রদান করে। সিনক্রোনাস এপিআই কেবল ওয়েব ওয়ার্কার   এর ভিতরে ব্যবহারের জন্য কিন্তু এটি এখনও কোন ব্রাউজারে বাস্তবায়ন করা হয়নি। এসিনক্রোনাস এপিআই ওয়েবওয়ার্কার এর ভিতরে ও বাইরে উভয় জায়গাতে কাজ করে,কিন্তু ফায়ারফক্সে এখনও বাস্তবায়ন হয়নি।

এসিনক্রোনাস এপিআই

এসিনক্রোনাস এপিআই মেথড কলিং থ্রেডকে ব্লক না করে তা রিটার্ন করে। একটি  ডাটাবেজ এ এসিনক্রোনাস প্রবেশাধিকার নেওয়ার জন্য ,একটি   window অবজেক্টের   indexedDB এট্রিবিউট এর  open() কল করুন। এই মেথড একটি  {{domxref("IDBRequest")}} অবজেক্ট রিটার্ন করে ;এসিনক্রোনাস অপারেশনগুলো  এপ্লিকেশন এর সাথে যোগাযোগ করে {{domxref("IDBRequest")}} অবজেক্টগুলোর ইভেন্ট চালুর মাধ্যমে।

নোট:   indexedDB অবজেক্ট পুরাতন ব্রাউজার ভার্সনগুলোতে পূর্বনির্ধারিত (property mozIndexedDB  Gecko < 16 এ , webkitIndexedDB  Chrome এ, এবং  msIndexedDB  IE 10 ে).

এসিনক্রোনাস ইনডেক্সডডিবি (IndexedDB) এপিআই এর ইন্টারফেসগুলো নিচের ন্যায়:

{{domxref("IDBFactory")}}
ডাটাবেজে প্রবেশাধিকার প্রদান করে। গ্লোবাল অবজেক্ট  indexedDB এই ইন্টারফেসটি বাস্তবায়ন করছে এবং এই এপিআই এর জন্য এটি প্রবেশমুখ।
{{domxref("IDBCursor")}}
অবজেক্ট স্টোরসমূহ এবং ইনডেক্সসমূহের উপর বারবার ইটারেট করে।
{{domxref("IDBCursorWithValue")}}
অবজেক্ট স্টোরসমূহ এবং ইনডেক্সসমূহ বারবার ইটারেট করে এবং কার্সর এর বর্তমান মান রিটার্ন করে।
{{domxref("IDBDatabase")}}
ডাটাবেজের একটি সংযোগ বুঝায়। এটি একমাত্র রাস্তা যা দিয়ে ডাটাবেজে লেনদেন সম্ভব।
{{domxref("IDBEnvironment")}}
একটি ক্লায়েন্ট-সাইড ডাটাবেজে প্রবেশাধিকার প্রদান করে। এটি {{ domxref("window") }} এবং{{ domxref("worker") }} অবজেক্টসমূহদ্বারা বাস্তবায়িত হচ্ছে।
{{domxref("IDBIndex")}}
একটি ইনডেক্স এর মেটাডাটাতে প্রবেশাধিকার প্রদান করে।
{{domxref("IDBKeyRange")}}
কীসমূহের একটি সীমা সংজ্ঞায়িত করে।
{{domxref("IDBObjectStore")}}
একটি অবজেক্ট স্টোরকে প্রতিনিধিত্ব করে।
{{domxref("IDBOpenDBRequest")}}
একটি ডাটাবেজ খোলার অনুরোধকে প্রতিনিধিত্ব করে।
{{domxref("IDBRequest")}}
ডাটাবেজ এবং ডাটাবেজ অবজেক্টসমূহে এসিনক্রোনাস অনুরোধগুলোর ফলাফলে প্রবেশাধিকার প্রদান করে। এটি হল যেটি আপনি এসিনক্রোনাস মেথডকে কল করার ফলে পান।
{{domxref("IDBTransaction")}}
একটি ডাটাবেজ ট্রানসেকশনকে প্রতিনিধিত্ব করে। আপনি একটি ডাটাবেজে ট্রানসেকশন তৈরী করেন,স্কোপটি বলে দিলে(যেমন কোন অবজেক্ট স্টোরগুলোতে আপনি প্রবেশাধিকার চাচ্ছেন) এবং কি ধরণের প্রবেশাধিকার চাচ্ছেন( কেবলমাত্র পাঠ নাকি লেখাসহ)।

স্পেসিফেকেশন এর একটি প্রাথমিক ভার্সনে এই মুছে ফেলা ইন্টারফেসগুলো সংজ্ঞায়িত ছিল। কিন্তু এগুলো এখনো নথিবদ্ধ করে রাখা হয়েছে যাতে আপনার পূর্বে লেখা কোন কোড পরিবর্তনের প্রয়োজন হয়।

{{domxref("IDBVersionChangeRequest")}}
একটি ডাটাবেজের ভার্সন পরিবর্তনের অনুরোধকে প্রতিনিধিত্ব কওরে। ডাটাবেজের ভার্সন পরিবর্তনের উপায় সম্প্রতি বদলানো হয়েছে ({{domxref("IDBFactory.open")}} কে কল করে এবং {{domxref("IDBDatabase.setVersion")}}কে কল না করে), এবং {{domxref("IDBOpenDBRequest")}} ইন্টারফেসটি এখন মুছে ফেলা {{domxref("IDBVersionChangeRequest")}} এর কাজ করতে পারে।
{{domxref("IDBDatabaseException")}}  {{ obsolete_inline() }}
ডাটাবেজ অপারেশন এর সময় প্রাপ্ত এক্সসেপশন শর্তগুলোকে প্রতিনিধিত্ব করে।

নোট:  এই  এপিআই এর একটি সিনক্রোনাস ভার্সন   আছে,যা  কোন ব্রাউজার এখনও বাস্তবায়িত হয়নি। এটি  কোন ব্রাউজারে এখনও বাস্তবায়িত হয় নি। এটি  ওয়েব ওয়ার্কার  এর সাথে ব্যবহারের জন্য তৈরী।

 স্টোরেজ সীমা

একক ডাটাবেজ এর আইটেম সাইজ এর কোন সীমা নেই। কিন্তু ইনডেক্সডডিবি (IndexedDB) ডাটাবেজ সাইজ এর একটি সীমা থাকতে পারে। এই সীমা(এবং কিভাবে ইউজার ইন্টারফেস তা ব্যবহার করবে) তা এক ব্রাউজার ও অন্য ব্রাউজার এ ভিন্ন হতে পারে।

উদাহারণ

ব্রাউজার সামঞ্জস্যতা

{{ CompatibilityTable() }}

বৈশিষ্ট্য ক্রোম ফায়ারফক্স(গেকো ) ইন্টারনেট  এক্সপ্লোরার ওপেরা

সাফারি

(ওয়েবকিট)

এসিনক্রোনাস এপিআই

১১.0 {{ property_prefix("webkit") }}
24

{{ CompatGeckoDesktop("2.0") }} {{ property_prefix("moz") }}
{{ CompatGeckoDesktop("16.0") }}
১০ ১৭ {{ CompatNo() }}
সিনক্রোনাস এপিআই
(ওয়েব ওয়ার্কার এর সাথে ব্যবহৃত)
{{ CompatNo() }} {{ CompatNo() }}
See {{ bug(701634) }}
{{ CompatNo() }} {{ CompatNo() }} {{ CompatNo() }}
বৈশিষ্ট্য এন্ড্রয়েড ফায়ারফক্স মোবাইল (গেকো)

আই-ই

ফোন

ওপেরা মোবাইল সাফারি মোবাইল
এসিনক্রোনাস  এপিআই ৪.৪ {{ CompatGeckoDesktop("6.0") }} {{ property_prefix("moz") }}
{{ CompatGeckoDesktop("16.0") }}
১০ ১৭ {{ CompatNo() }}

নোট :কিছু ব্রাউজার এখনও ইনডেক্সডডিবি সাপোর্ট না করলেও ওয়েব সিকুয়েল (webSQL)সাপোর্ট করে,  যেমন সাফারি/ওয়েবকিট ডেস্কটপ ও আইওএস। এই সমস্যার একটি সমাধান হচ্ছে  ইনডেক্সডডিবি পলিফিল বা শিম  ব্যবহার করা যা অসর্মথিত ব্রাউজার এর ক্ষেত্রে ওয়েবসিকুয়েল এ  ফল ব্যাক করে।

আরও দেখুন