সংরক্ষিত কার্যপ্রণালী উচ্চ ফলপ্রসু এবং নিরাপত্তা বেনিফিট বিতরণ
মাইক্রোসফ্ট এসকিউএল সার্ভার পরিচালিত ব্লকগুলিতে ট্রান্স্যাক্ট-এসকিউএল স্টেটমেন্ট গ্রুপিং দ্বারা ডেটাবেস ডেভেলপমেন্ট প্রক্রিয়াকে সহজ করার জন্য সঞ্চিত পদ্ধতির ব্যবস্থা প্রদান করে। সঞ্চিত পদ্ধতিগুলি বেশিরভাগ এসকিউএল সার্ভার ডেভেলপারদের দ্বারা দক্ষতা এবং নিরাপত্তা বেনিফিট যা তারা কাটাতে হয় তাদের দ্বারা প্রশংসিত হয় সময়ের মধ্যে আপফ্রন্ট বিনিয়োগ ভাল মূল্য।
সংরক্ষণের পদ্ধতি ব্যবহার করে উপকারিতা
কেন একটি বিকাশকারী সঞ্চয় পদ্ধতি ব্যবহার করা উচিত?
এই প্রযুক্তির মূল সুবিধাগুলি এখানে রয়েছে:
- Precompiled মৃত্যুদন্ড: SQL সার্ভার প্রতিটি সঞ্চিত পদ্ধতি একবার কম্পাইল এবং তারপর মৃত্যুদন্ড পরিকল্পনা reutilizes। সঞ্চিত পদ্ধতি বারবার বলা হয় যখন এটি জট্টিল কর্মক্ষমতা বৃদ্ধি ফলাফল।
- কম ক্লায়েন্ট / সার্ভার ট্র্যাফিক: যদি নেটওয়ার্ক ব্যান্ডউইথটি আপনার পরিবেশে উদ্বেগের বিষয় হয়ে থাকে, তবে আপনি শিখতে পারবেন যে সঞ্চিত পদ্ধতিগুলি কেবলমাত্র একটি লাইনের দীর্ঘ এসকিউএল ক্যোয়ারিকে কমাতে পারে যা তারের উপর প্রেরণ করা হয়।
- কোড এবং প্রোগ্রামিং বিমূর্ততার দক্ষ পুনঃব্যবহার: সংরক্ষণ করা পদ্ধতিগুলি একাধিক ব্যবহারকারী এবং ক্লায়েন্ট প্রোগ্রাম দ্বারা ব্যবহার করা যেতে পারে। যদি আপনি তাদের পরিকল্পিত ভাবে ব্যবহার করেন, তবে আপনি আবিষ্কারের সময় কম সময় পাবেন।
- উন্নত নিরাপত্তা নিয়ন্ত্রণগুলি: আপনি অনুমতিপ্রাপ্ত টেবিলের অনুমতিগুলির স্বাধীনভাবে একটি সংরক্ষিত পদ্ধতি চালানোর জন্য ব্যবহারকারীদের অনুমতি দিতে পারেন।
সংরক্ষণ করা পদ্ধতি ব্যবহারকারী-সংজ্ঞায়িত ফাংশনগুলির অনুরূপ, কিন্তু সূক্ষ্ম পার্থক্য রয়েছে।
গঠন
সংরক্ষিত প্রক্রিয়াকরণ অন্যান্য প্রোগ্রামিং ভাষাগুলিতে দেখা নির্মাণগুলির মত।
তারা ইনপুট প্যারামিটার আকারে ডেটা স্বীকার করে যা এক্সিকিউশন সময় নির্দিষ্ট করা হয়। এই ইনপুট প্যারামিটারগুলি (প্রয়োগ করা হলে) কিছু ফলাফল প্রকাশ করে এমন একটি বিবৃতির ক্রমানুসারে কার্যকর করা হয়। এই ফলাফল রেকর্ডসেট, আউটপুট প্যারামিটার এবং একটি রিটার্ন কোড ব্যবহার করে কলিং পরিবেশে ফিরে আসে।
যে একটি মুখের মত শব্দ হতে পারে, কিন্তু আপনি যে সংগ্রহের পদ্ধতি আসলে বেশ সহজ হয় পাবেন।
উদাহরণ
এর এই পৃষ্ঠার নীচে প্রদর্শিত তালিকাভুক্ত সারণির সাথে সম্পর্কিত একটি বাস্তব উদাহরণটি দেখুন। এই তথ্য বাস্তব সময়ে আপডেট করা হয়, এবং গুদাম ম্যানেজার ক্রমাগত তাদের গুদাম এ সংরক্ষিত পণ্য স্তরের চেক এবং চালানের জন্য উপলব্ধ। অতীতে, প্রতিটি ম্যানেজার নিম্নলিখিত অনুরূপ জিজ্ঞাসা চালানো হবে:
পণ্য, পরিমাণ নির্বাচন করুন
ইনভেন্টরি থেকে
WHERE গুদাম = 'FL'
এটি এসকিউএল সার্ভার অকার্যকর পারফরম্যান্সের ফলে। প্রতিটি সময় একটি গুদাম ম্যানেজার ক্যোয়ারী চালানো, ডাটাবেস সার্ভারটি পুনঃসংযোগ করা এবং এটি স্ক্র্যাচ থেকে চালানোর জন্য বাধ্য করা হয়েছিল। এছাড়াও এসকিউএল জ্ঞান থাকার জন্য গুদাম ম্যানেজারের প্রয়োজন এবং টেবিলে তথ্য অ্যাক্সেস করার উপযুক্ত অনুমতি।
পরিবর্তে, প্রক্রিয়া একটি সঞ্চিত পদ্ধতির ব্যবহারের মাধ্যমে সরলীকৃত হতে পারে এখানে sp_GetInventory নামক একটি পদ্ধতির জন্য কোড যা প্রদত্ত গুদামের জন্য ইনভেন্টরি মাত্রা উদ্ধার করে।
প্রক্রিয়া তৈরি করুন sp_GetInventory
@ লোপা varchar (10)
আঃ
পণ্য, পরিমাণ নির্বাচন করুন
ইনভেন্টরি থেকে
যেখানে গুদাম = @ অবস্থান
ফ্লোরিডা গুদাম ম্যানেজার তারপর কমান্ড প্রেরণ করে ইনভেন্টরি মাত্রা অ্যাক্সেস করতে পারেন:
EX_US
নিউইয়র্কের গুদাম ব্যবস্থাপক ঐ এলাকার জায়োজটি অ্যাক্সেস করার জন্য একই সঞ্চিত পদ্ধতিটি ব্যবহার করতে পারেন:
EX_Image sp_GetInventory 'NY'
মঞ্জুর, এই একটি সহজ উদাহরণ, কিন্তু বিমূর্ততা এর সুবিধা এখানে দেখা যায়। গুদাম ব্যবস্থাপককে এসকিউএল অথবা পদ্ধতির ভেতরের কাজগুলি বোঝার প্রয়োজন নেই। একটি কর্মক্ষমতা দৃষ্টিকোণ থেকে, সঞ্চিত পদ্ধতি বিস্ময়কর কাজ করে। SQL সার্ভার একবার একটি এক্সিকিউশন প্ল্যান তৈরি করে এবং তারপর এক্সিকিউশন সময় সঠিক প্যারামিটারে প্লাগিং দ্বারা এটি পুনরুল্য করে।
এখন যে আপনি সঞ্চিত পদ্ধতির সুবিধাগুলি শিখেছেন, সেখানে যান এবং তাদের ব্যবহার করুন।
কিছু উদাহরণ চেষ্টা করুন এবং অর্জন কর্মক্ষমতা উন্নত পরিমাপ - আপনি বিস্মিত হবে!
ইনভেন্টরি টেবিল
আইডি | প্রোডাক্ট | গুদাম | পরিমাণ |
142 | সবুজ মটরশুটি | এনওয়াই | 100 |
214 | ডাল | এফএল | 200 |
825 | ভূট্টা | এনওয়াই | 140 |
512 | লিমা মটরশুটি | এনওয়াই | 180 |
491 | টমেটো | এফএল | 80 |
379 | তরমুজ | এফএল | 85 |