কম্পিউটার টিউটোরিয়াল

MySQL স্টোরড প্রোসিজারের আউটপুট সাপ্রেস (দমন) করা


MySQL-এ ভেরিয়েবল ব্যবহার করে স্টোরড প্রোসিজার আউটপুট হ্যান্ডলিং

MySQL স্টোরড প্রোসিজার সরাসরি রেজাল্ট সেট রিটার্ন করে না। আউটপুট নেওয়ার জন্য ইউজার-ডিফাইন্ড ভেরিয়েবল (@variable) ব্যবহার করা হয়।

উদাহরণ সহ ব্যাখ্যা

টেবিল তৈরি ও ডেটা:

mysql> CREATE TABLE person_information (Id INT, Name VARCHAR(20));
mysql> INSERT INTO person_information VALUES(100, 'John'), (101, 'Chris'), (102, 'Robert');

স্টোরড প্রোসিজার তৈরি (আউটপুট ভেরিয়েবলে স্টোর):

mysql> DELIMITER //
mysql> CREATE PROCEDURE sp_supressOutputDemo()
    -> BEGIN
    ->     SET @output = (SELECT Name FROM person_information WHERE id = 101);
    -> END //
mysql> DELIMITER ;

প্রোসিজার কল করি (কোনো আউটপুট দেখাবে না):

mysql> CALL sp_supressOutputDemo();
Query OK, 0 rows affected (0.00 sec)

ভেরিয়েবল থেকে আউটপুট দেখি:

mysql> SELECT @output;
+---------+
| @output |
+---------+
| Chris   |
+---------+

দ্রষ্টব্য: DELIMITER // ও DELIMITER ; প্রোসিজার ডেফিনিশনের জন্য দরকার। আউটপুট পেতে অবশ্যই SELECT @variable করতে হবে।

  1. MySQL-এ স্টোরড প্রসিডিউর দিয়ে টেবিল তৈরি করা

  2. MySQL স্ট্রোড প্রসিডিউরে ৫টি র‍্যান্ডম নম্বর জেনারেট করা

  3. MySQL স্টোরড প্রসিডিউরে IF-ELSE শর্ত সঠিকভাবে বাস্তবায়ন

  4. MySQL স্টোরড প্রসিডিউরে DELIMITER সঠিকভাবে ব্যবহার করা