IndexedDB লেনদেনের সুযোগ সংজ্ঞায়িত করা

IndexedDB কি?

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

তাই নতুন কি?

আমার বন্ধুদের পরিবর্তন করুন... আমাদের কিছু পরিবর্তন আছে যা কিছু ত্রুটি নিক্ষেপ করতে যাচ্ছে যদি আমরা সেগুলিকে সাধারণ সিনট্যাক্স পরিবর্তনের সাথে পরিচালনা না করি।

17 সংস্করণ থেকে, ক্রোম এখন একটি ত্রুটি নিক্ষেপ করবে যদি একটি IndexedDB লেনদেন একটি বস্তুর দোকানে স্কোপ না করা হয়। যেহেতু সমস্ত ডেটা পড়া এবং লেখা লেনদেনের মধ্যে সম্পন্ন করা হয়, তাই আমাদের একটি ডাটাবেসে একটি লেনদেন তৈরি করতে হবে, সুযোগটি নির্দিষ্ট করতে হবে (যেমন আপনি কোন বস্তুর স্টোরগুলিতে অ্যাক্সেস করতে চান) এবং অ্যাক্সেসের ধরন নির্ধারণ করতে হবে (শুধুমাত্র পড়তে বা লিখতে)।

এটা কোড মানে কি? আচ্ছা, আমাদের database.transaction এ একটি খালি অ্যারে পাস করার পরিবর্তে:

var transaction = db.transaction([], IDBTransaction.READ_ONLY);

আপনার একটি নির্দিষ্ট অবজেক্ট স্টোর বা অবজেক্ট স্টোরের তালিকার সুযোগ থাকা উচিত:

// all stores (equivalent to what use to be marked as empty array. )
var transaction = db.transaction(db.objectStoreNames, IDBTransaction.READ_ONLY);

// multiple stores:
var transaction = db.transaction(['ObjectStoreName1', 'ObjectStoreName2'],
    IDBTransaction.READ_ONLY);

// single store - these are equivalent
var transaction = db.transaction(['ObjectStoreName'], IDBTransaction.READ_ONLY);
var transaction = db.transaction('ObjectStoreName', IDBTransaction.READ_ONLY);

আপনি লেনদেনে সঠিক সুযোগ এবং মোড ব্যবহার করে ডেটা অ্যাক্সেসের গতি বাড়াতে পারেন। এখানে কয়েকটি টিপস রয়েছে: সুযোগ সংজ্ঞায়িত করার সময়, শুধুমাত্র আপনার প্রয়োজনীয় বস্তুর দোকানগুলি নির্দিষ্ট করুন৷ এইভাবে, আপনি একযোগে অ-ওভারল্যাপিং স্কোপের সাথে একাধিক লেনদেন চালাতে পারেন। প্রয়োজনে শুধুমাত্র একটি READ_WRITE লেনদেন মোড নির্দিষ্ট করুন৷ আপনি ওভারল্যাপিং স্কোপের সাথে একসাথে একাধিক READ_ONLY লেনদেন চালাতে পারেন, কিন্তু আপনি একটি অবজেক্ট স্টোরের জন্য শুধুমাত্র একটি READ_WRITE লেনদেন করতে পারেন।

অন্যান্য উত্স:

তাই পরের বার পর্যন্ত... ওয়েবকে কাছাকাছি অঞ্চলে ঠেলে রাখুন।