আমি অপ্রয়োজনীয়, ভোল্যাটাইল এবং স্ট্যাবল ফাংশনগুলির সংজ্ঞাগুলির সত্য অর্থ সম্পর্কে অস্পষ্ট।
আমি ডকুমেন্টেশন পড়ি, বিশেষত প্রত্যেকটির সংজ্ঞা।
অপ্রত্যাশিত ইঙ্গিত দেয় যে ফাংশনটি ডাটাবেসটি পরিবর্তন করতে পারে না এবং একই আর্গুমেন্টের মান দেওয়া হলে সর্বদা একই ফল দেয় ; এটি হ'ল এটি ডাটাবেস লুকআপ করে না বা অন্যথায় তার যুক্তি তালিকায় সরাসরি উপস্থিত তথ্য ব্যবহার করে না। যদি এই বিকল্পটি দেওয়া হয় তবে অবিচ্ছিন্ন আর্গুমেন্ট সহ ফাংশনের যে কোনও কল তত্ক্ষণাত ফাংশন মানের সাথে প্রতিস্থাপন করা যেতে পারে।
স্ট্যাবল ইঙ্গিত দেয় যে ফাংশনটি ডাটাবেসটি সংশোধন করতে পারে না, এবং একক টেবিল স্ক্যানের মধ্যে এটি একই যুক্তির মানগুলির জন্য একই ফলাফলটি ধারাবাহিকভাবে ফিরিয়ে আনবে , তবে এর ফলাফল এসকিউএল স্টেটমেন্টগুলিতে পরিবর্তন হতে পারে। এটি ফাংশনগুলির জন্য উপযুক্ত নির্বাচন যার ফলাফলগুলি ডাটাবেস লকআপ, প্যারামিটার ভেরিয়েবলগুলি (যেমন বর্তমান সময় অঞ্চল) ইত্যাদির উপর নির্ভর করে (ইত্যাদি বর্তমান কমান্ড দ্বারা পরিবর্তিত সারিগুলি জিজ্ঞাসা করতে ইচ্ছুক আফ্রি ট্রিগারদের ক্ষেত্রে এটি অনুপযুক্ত)) এছাড়াও নোট করুন যে কারেন্ট-টাইমস্ট্যাম্প ফাংশনের পরিবার স্থিতিশীল হিসাবে যোগ্যতা অর্জন করে, যেহেতু তাদের মানগুলি কোনও লেনদেনের মধ্যে পরিবর্তন হয় না।
ভোলিটাইল ইঙ্গিত দেয় যে ফাংশনের মান একটি একক টেবিল স্ক্যানের মধ্যেও পরিবর্তিত হতে পারে, সুতরাং কোনও অপ্টিমাইজেশন করা যায় না। তুলনামূলকভাবে কয়েকটি ডাটাবেস ফাংশন এই অর্থে অস্থির; কয়েকটি উদাহরণ এলোমেলো (), কার্বল (), সময়সীমার ()। তবে মনে রাখবেন যে কোনও ক্রিয়াকলাপ যার পার্শ্ব প্রতিক্রিয়া রয়েছে সেগুলি অবশ্যই কলটিকে অপ্টিমাইজড হওয়া থেকে বিরত রাখতে, তার ফলাফলটি বেশ পূর্বাভাসজনক হলেও শ্রেণিবদ্ধ করা উচিত; একটি উদাহরণ সেটওয়াল ()।
আমার ধান্দা অপরিবর্তনীয় জন্য শর্ত এবং স্থিতিশীল ফাংশন যা দিয়ে আসে সর্বদা বা ধারাবাহিকভাবে একই ফলাফল ফেরৎ একই আর্গুমেন্ট দেওয়া।
অপ্রত্যাশিত সংজ্ঞা বলছে যে ফাংশনটি ডাটাবেসগুলি অনুসন্ধান করে না বা অন্যথায় তার যুক্তি তালিকায় সরাসরি উপস্থিত তথ্য ব্যবহার করে না। সুতরাং, আমার কাছে, এর অর্থ এই যে ফাংশনগুলি ক্লায়েন্টের সরবরাহিত ডেটা ম্যানিপুলেট করতে ব্যবহৃত হয়, এবং সেলেক্ট স্টেটমেন্টগুলি থাকা উচিত নয় ... যদিও এটি আমার কাছে কিছুটা বিশ্রী মনে হচ্ছে sounds
স্ট্যাবলের সাথে, সংজ্ঞাটি একইরকম যেখানে এটি বলে যে এটি ধারাবাহিকভাবে একই ফলাফলটি ফিরিয়ে আনতে হবে। সুতরাং, আমার কাছে, এর অর্থ এই যে প্রতিটি সময় একই আর্গুমেন্টের সাথে ফাংশনটি ডাকা হয়, তার একই ফলাফলগুলি (একই নির্ভুল সারিগুলি, প্রতি একক সময়) ফেরত দেওয়া উচিত।
সুতরাং, আমার কাছে ... এর অর্থ হ'ল যে কোনও ফাংশন যা কোনও টেবিল বা টেবিলগুলিতে আপডেট করা যায় সেগুলিতে একটি নির্বাচন সম্পাদন করে, কেবলমাত্র অস্থির হওয়া উচিত।
তবে, আবার ... এটি আমার কাছে ঠিক শোনাচ্ছে না।
এটিকে আমার ব্যবহারের ক্ষেত্রে ফিরিয়ে আনতে, আমি এমন ফাংশনগুলি লিখছি যা একাধিক জিনের সাথে নির্বাচিত স্টেটমেন্টগুলি টেবিলগুলিতে নিয়মিত যুক্ত করা হয়, যাতে ফাংশন কলগুলি প্রতিবার যখন ডাকা হয়, তবুও একই যুক্তি সহ বিভিন্ন ফলাফল প্রত্যাশা করে would ।
সুতরাং, এর অর্থ কি আমার ফাংশনগুলি ভোলিটাইল হওয়া উচিত? যদিও ডকুমেন্টেশন তুলনামূলকভাবে কয়েকটি ডাটাবেস ফাংশন এই অর্থে অস্থির হয় ?
ধন্যবাদ!