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

phpMyAdmin-এ স্টোরড প্রসিডিউার দিয়ে ডেটা ইনসার্ট


স্টোরড প্রসিডিউার তৈরি ও কল

MySQL-এ CREATE PROCEDURE দিয়ে প্যারামিটারাইজড ইনসার্ট লজিক এনক্যাপসুলেট করুন। phpMyAdmin-এ SQL ট্যাব থেকে রান করুন।

সিনট্যাক্স

DELIMITER //
CREATE PROCEDURE procedure_name(IN param1 TYPE, IN param2 TYPE)
BEGIN
    INSERT INTO table (col1, col2) VALUES (param1, param2);
END //
DELIMITER ;

উদাহরণ

টেবিল তৈরি

mysql> create table StoredProcedureInsertDemo (
    -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> UserName varchar(20),
    -> UserAge int
    -> );
Query OK, 0 rows affected (0.63 sec)

প্রসিডিউার তৈরি

mysql> DELIMITER //
mysql> CREATE PROCEDURE procedure_InsertIntoTable(IN FirstName VARCHAR(100), IN Age INT)
    -> BEGIN
    ->     INSERT INTO StoredProcedureInsertDemo(UserName, UserAge) VALUES (FirstName, Age);
    -> END
    -> //
Query OK, 0 rows affected (0.34 sec)
mysql> DELIMITER ;

প্রসিডিউার কল

mysql> CALL procedure_InsertIntoTable('Larry', 23);
Query OK, 1 row affected, 1 warning (0.19 sec)

ডেটা যাচাই

mysql> SELECT * FROM StoredProcedureInsertDemo;

আউটপুট

+--------+----------+---------+
| UserId | UserName | UserAge |
+--------+----------+---------+
|      1 | Larry    |      23 |
+--------+----------+---------+

সেরা অনুশীলন:

  • ইনপুট ভ্যালিডেশন প্রসিডিউারের ভিতরে করুন
  • ট্রানজ্যাকশন ব্যবহার করুন (START TRANSACTION ... COMMIT/ROLLBACK)
  • SQL ইনজেকশন রোধে প্রিপেয়ার্ড স্টেটমেন্ট সমতুল্য কাজ করে
  • phpMyAdmin-এ "Routines" ট্যাব থেকে প্রসিডিউার ম্যানেজ করুন
  1. MySQL-এ একই টেবিলে ভিন্ন ডেট ফরম্যাটে ডেট রেকর্ড ইনসার্ট করা

  2. MySQL স্টোরড প্রসিডিউরে ডেটা ইনসার্ট করা

  3. MySQL-এ LEFT JOIN ব্যবহার করে টেবিল A-র ডেটা টেবিল B-এ না থাকলে টেবিল C-তে ইনসার্ট করা

  4. ডেটা-সমর্থিত পурো প্রফেশনাল ইমেইল লেখার উপায়