কম্পিউটার

সংরক্ষিত পদ্ধতি কি এবং কিভাবে আমরা MySQL সঞ্চিত পদ্ধতি তৈরি করতে পারি?


সংরক্ষিত পদ্ধতি, নিয়মিত কম্পিউটিং ভাষার পরিপ্রেক্ষিতে, ডাটাবেসে সংরক্ষিত একটি সাবপ্রোগ্রামের মতো একটি সাবরুটিন হিসাবে সংজ্ঞায়িত করা যেতে পারে। মাইএসকিউএল-এর প্রসঙ্গে, এটি ডাটাবেস ক্যাটালগের ভিতরে সংরক্ষিত ঘোষণামূলক SQL স্টেটমেন্টের একটি অংশ। MySQL-এ সংরক্ষিত পদ্ধতি লেখার আগে, আমাদের অবশ্যই সংস্করণটি পরীক্ষা করতে হবে কারণ MySQL 5 সঞ্চিত পদ্ধতির পরিচয় দেয়। একটি সংরক্ষিত পদ্ধতি −

তৈরি করার জন্য সিনট্যাক্স নিচে দেওয়া হল

সিনট্যাক্স

<প্রে> তৈরি করুন [ডিফাইনার ={ ব্যবহারকারী | CURRENT_USER }]প্রক্রিয়া sp_name ([proc_parameter[,...]])[বৈশিষ্ট্যগত ...] রুটিন_বডিপ্রোক_প্যারামিটার:[ IN | আউট | INOUT ] param_name typetype:যেকোনো বৈধ MySQL ডেটা টাইপচরিত্রিক:COMMENT 'স্ট্রিং'| ভাষা SQL| [নয়] নির্ধারক| { SQL ধারণ করে | NO SQL | এসকিউএল ডেটা পড়ে | এসকিউএল ডেটা পরিবর্তন করে }| এসকিউএল সিকিউরিটি { ডিফাইনার | ইনভোকার }রুটিন_বডি:বৈধ SQL রুটিন স্টেটমেন্ট

উদাহরণ

অনুসরণ করা হল একটি উদাহরণ যেখানে আমরা 'ছাত্র_তথ্য' টেবিল থেকে সমস্ত রেকর্ড পেতে একটি সহজ পদ্ধতি তৈরি করেছি যার মধ্যে নিম্নলিখিত ডেটা রয়েছে −

mysql> student_info থেকে * সিলেক্ট করুন;+------+---------+---------+--------- --+| আইডি | নাম | ঠিকানা | বিষয় |+------+---------+------------+------------+| 100 | আরাভ | দিল্লী | কম্পিউটার || 101 | যশপাল | অমৃতসর | ইতিহাস || 105 | গৌরব | জয়পুর | সাহিত্য || 110 | রাহুল | চণ্ডীগড় | ইতিহাস |+------+---------+------------+------------+4 সেটে সারি ( 0.00 সেকেন্ড)

এখন, নিম্নলিখিত প্রশ্নের সাহায্যে আমরা allrecords() নামে সংরক্ষিত পদ্ধতি তৈরি করেছি

mysql> Delimiter //mysql> প্রক্রিয়া তৈরি করুন allrecords() -> BEGIN -> Student_info থেকে * নির্বাচন করুন; -> শেষ//কোয়েরি ঠিক আছে, 0টি সারি প্রভাবিত (0.02 সেকেন্ড)mysql> DELIMITER;

  1. MySQL সংরক্ষিত ফাংশন কি এবং কিভাবে আমরা তাদের তৈরি করতে পারি?

  2. কিভাবে আমরা একটি MySQL ট্রিগার তৈরি এবং ব্যবহার করতে পারি?

  3. কিভাবে সংরক্ষিত পদ্ধতিতে IF ব্যবহার করবেন এবং MySQL এ নির্বাচন করবেন?

  4. মাইএসকিউএল ওয়ার্কবেঞ্চ ব্যবহার করে একটি সঞ্চিত পদ্ধতি তৈরি করবেন?