কম্পিউটার

পরামিতি সহ MySQL এ একটি পদ্ধতি তৈরি করবেন?


আপনি IN এবং OUT ব্যবহার করে একটি প্যারামিটার তৈরি করতে পারেন। IN ইনপুট প্যারামিটার নিতে ব্যবহৃত হয় এবং আউটপুটের জন্য OUT ব্যবহার করা যেতে পারে।

সিনট্যাক্স নিম্নরূপ

ডিলিমিটার //প্রক্রিয়া তৈরি করুন আপনার পদ্ধতির নাম(আপনার প্যারামিটার নামের ডেটা টাইপের মধ্যে, আপনার প্যারামিটার নামের ডেটা টাইপ থেকে)BEGINআপনার স্টেটমেন্ট1;আপনার স্টেটমেন্ট2;..NEND;//ডিলিমিটার;

প্রথমত, আমরা একটি টেবিল তৈরি করব। একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ

mysql> টেবিল SumOfAll তৈরি করুন -> ( -> পরিমাণ int -> );কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.78 সেকেন্ড)

সন্নিবেশ কমান্ড ব্যবহার করে টেবিলে কিছু রেকর্ড সন্নিবেশ করান। প্রশ্নটি নিম্নরূপ

mysql> SumOfAll মানগুলিতে সন্নিবেশ করুন 450); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.10 সেকেন্ড) mysql> SumOfAll মানগুলিতে সন্নিবেশ করুন (400); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.20 সেকেন্ড)

সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ

mysql> SumOfAll থেকে *নির্বাচন করুন;

নিম্নলিখিত আউটপুট

<প্রে>+---------+| পরিমাণ |+---------+| 100 || 330 || 450 || 400 |+-------+4 সারি সেটে (0.00 সেকেন্ড)

এখন, আমরা একটি সংরক্ষিত পদ্ধতি তৈরি করব যা টেবিলে মানটি উপস্থিত আছে কি না তা পরীক্ষা করবে। যদি প্রদত্ত মানটি টেবিলে উপস্থিত না থাকে তবে আপনি একটি NULL মান পাবেন৷

সংরক্ষিত পদ্ধতিটি নিম্নরূপ

mysql> DELIMITER //mysql> পদ্ধতি তৈরি করুন sp_ChechValue(IN value1 int,OUT value2 int) -> শুরু -> মান সেট করুন 2=(SumOfAll থেকে পরিমাণ নির্বাচন করুন যেখানে Amount=value1); -> শেষ; -> //কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.20 সেকেন্ড)mysql> বিভেদক;

আসুন কিছু মান সহ সংরক্ষিত পদ্ধতিটিকে কল করি এবং একটি সেশন ভেরিয়েবলে আউটপুট সংরক্ষণ করি।

কেস 1:যখন মানটি টেবিলে উপস্থিত থাকে না।

mysql> কল sp_ChechValue(300,@isPresent); কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.00 সেকেন্ড)

এখন সিলেক্ট স্টেটমেন্ট ব্যবহার করে একটি ভেরিয়েবল @isPresent-এ মান পরীক্ষা করুন। প্রশ্নটি নিম্নরূপ

mysql> @isPresent নির্বাচন করুন;

নিম্নলিখিত আউটপুট

<প্রে>+------------+| @isবর্তমান |+------------+| NULL |+------------+1 সারি সেটে (0.00 সেকেন্ড)

কেস 2:যখন মান উপস্থিত থাকে।

প্রশ্নটি নিম্নরূপ। আসুন আমরা সঞ্চিত পদ্ধতিকে কল করি

mysql> কল sp_ChechValue(330,@isPresent); কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.00 সেকেন্ড)

একটি সেশন ভেরিয়েবল @isPresent এর মান পরীক্ষা করুন। প্রশ্নটি নিম্নরূপ

mysql> @isPresent নির্বাচন করুন;

নিম্নলিখিত আউটপুট

<প্রে>+------------+| @isবর্তমান |+------------+| 330 |+------------+1 সারি সেটে (0.00 সেকেন্ড)
  1. গতিশীলভাবে টেবিল তৈরি করতে MySQL ক্যোয়ারী?

  2. DECLARE কীওয়ার্ড দিয়ে MySQL সংরক্ষিত পদ্ধতিতে ভেরিয়েবল তৈরি করুন

  3. MySQL-এ একটি সিলেক্ট ক্যোয়ারী দিয়ে সন্নিবেশ করুন

  4. MySQL-এ ম্যানুয়াল AUTO_INCREMENT স্টার্ট ভ্যালু দিয়ে টেবিল কোয়েরি তৈরি করবেন?