আপনি ইতিমধ্যে আপনার প্রথম প্রশ্নের উত্তর পেয়ে গেছেন: উদ্দেশ্যটি ADDকেবল তখনই কাজ করা হয় যখন কোনও কীটি ইতিমধ্যে উপস্থিত না থাকে, যখন SETমানটি আপডেট করার জন্য থাকে তবে তা ইতিমধ্যে বিদ্যমান কিনা তা নির্বিশেষে। আপনি যদি এসকিউএল এর সাথে পরিচিত হন তবে এটি (মোটামুটিভাবে) INSERTকোয়েরি ( ADD) এবং UPDATE( SET) এর মধ্যে পার্থক্যের মতো ।
আপনার সংযোজন সম্পর্কিত প্রশ্নের সাথে সম্পর্কিত, আপনি যে কোনও একটি আপনার উদ্দেশ্য অনুসারে ব্যবহার করবেন। আমি বলব যে SETএটি আরও সাধারণ অপারেশন হবে, কারণ এটি আরও সাধারণ যে আপনি কেবল বলতে চান "আমি কীটির fooমান রাখতে চাই bar, এবং এটি ইতিমধ্যে সেখানে ছিল কিনা" সে বিষয়ে আমার কোন চিন্তা নেই। তবে, (কম ঘন ঘন) উপলক্ষ্য হবে যখন এটি জানা দরকার যে কোনও চাবি ইতিমধ্যে ক্যাশে নেই।
যখন ADDউপযুক্ত মনে হবে তখন একটি উদাহরণ হ'ল মেমক্যাসে সেশনগুলি সংরক্ষণ করা (যা আমি প্রস্তাব দিই না) - আপনি যদি এলোমেলোভাবে (বা হ্যাশিংয়ের মাধ্যমে) আপনার সেশন আইডি তৈরি করেন তবে আপনি চান না কোনও বিদ্যমান ব্যবহারকারীর মতো একই কী দিয়ে একটি নতুন অধিবেশন তৈরি করতে, কারণ এটি একজন ব্যবহারকারীকে অন্য ব্যবহারকারীর ডেটাতে অ্যাক্সেস দেয়। এই ক্ষেত্রে, আপনি যখন সেশন তৈরি করবেন আপনি ব্যবহার করবেন ADDএবং এটি যদি একটি ব্যর্থতার স্থিতি ফিরে আসে তবে আপনাকে একটি নতুন সেশন আইডি তৈরি করতে হবে এবং আবার চেষ্টা করতে হবে। সেশনটি আপডেট করা, অবশ্যই, SETব্যবহারকারীরা আপনার অ্যাপ্লিকেশনটির মাধ্যমে তাদের কাজ হিসাবে ব্যবহার করবে ।