কম্পিউটার

মাইএসকিউএল সংরক্ষিত পদ্ধতির মধ্যে আমরা কীভাবে কমিট লেনদেন করতে পারি?


যেমন আমরা জানি START লেনদেন লেনদেন শুরু করবে এবং লেনদেন শুরু করার পরে যে কোনো পরিবর্তন করতে COMMIT ব্যবহার করা হয়। নিম্নলিখিত উদাহরণে, আমরা START লেনদেন সহ COMMIT-এর সাথে একটি সংরক্ষিত পদ্ধতি তৈরি করেছি যা একটি নতুন রেকর্ড সন্নিবেশ করবে এবং নিম্নলিখিত ডেটা সহ টেবিল 'employee.tbl'-এ পরিবর্তন করবে -

mysql> Select * from employee.tbl;
+----+---------+
| Id | Name    |
+----+---------+
|  1 | Mohan   |
|  2 | Gaurav  |
|  3 | Rahul   |
|  4 | Saurabh |
+----+---------+
4 rows in set (0.00 sec)

উদাহরণ

mysql> Delimiter //
mysql> Create Procedure st_transaction_commit()
    -> BEGIN
    -> START TRANSACTION;
    -> INSERT INTO employee.tbl(name) values ('Yash');
    -> UPDATE employee.tbl set name = 'Sohan' WHERE id = 3;
    -> COMMIT;
    -> END //
Query OK, 0 rows affected (0.03 sec)

এখন যখন আমরা এই পদ্ধতিটি চালু করি, এটি টেবিল employee.tbl-এ মান সন্নিবেশ ও আপডেট করবে। এটি পরিবর্তনগুলিও কমিট করবে৷

mysql> Delimiter ;
mysql> Call st_transaction_commit();
Query OK, 0 rows affected (0.17 sec)

mysql> Select * from employee.tbl;
+----+---------+
| Id | Name    |
+----+---------+
|  1 | Mohan   |
|  2 | Gaurav  |
|  3 | Sohan   |
|  4 | Saurabh |
|  5 | Yash    |
+----+---------+
5 rows in set (0.00 sec)

  1. আমরা কিভাবে একটি MySQL সঞ্চিত পদ্ধতি পরিবর্তন করতে পারি?

  2. কিভাবে আমরা একটি MySQL সঞ্চিত পদ্ধতির মধ্যে ROLLBACK লেনদেন সম্পাদন করতে পারি?

  3. আমরা কিভাবে MySQL সংরক্ষিত পদ্ধতির মধ্যে START লেনদেন সম্পাদন করতে পারি?

  4. কিভাবে একটি MySQL সঞ্চিত পদ্ধতি এটির ভিতরে অন্য MySQL সঞ্চিত পদ্ধতিকে কল করতে পারে?