কম্পিউটার

MySQL-এ ডিলিট অপারেশন চালানোর পর ফায়ার ট্রিগার


DELETE অপারেশনটি কার্যকর হওয়ার পরে ট্রিগার ফায়ার করতে AFTER DELETE ব্যবহার করুন৷ নিম্নলিখিত সিনট্যাক্স −

ডিলিমিটার // প্রতিটি সারির জন্য আপনার ট্রিগারনামটি মুছে ফেলার পরে আপনার ট্রিগার নামটি তৈরি করুন আপনার স্টেটমেন্ট1, . . এন শেষ; //

আসুন প্রথমে একটি টেবিল তৈরি করি -

mysql> টেবিল তৈরি করুন DemoTable(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,FirstName varchar(100));কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.62 সেকেন্ড)

সন্নিবেশ কমান্ড -

ব্যবহার করে টেবিলে কিছু রেকর্ড সন্নিবেশ করুন
mysql> DemoTable(FirstName) মান ('John');কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.20 সেকেন্ড)mysql> DemoTable(FirstName) মানগুলিতে ('Mike'); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত ( 0.12 সেকেন্ড)

সিলেক্ট স্টেটমেন্ট -

ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন
mysql> DemoTable থেকে *নির্বাচন করুন;

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

তৈরি করবে
+----+------------+| আইডি | প্রথম নাম |+----+------------+| 1 | জন || 2 | মাইক |+----+----------+2 সারি সেটে (0.00 সেকেন্ড)

ট্রিগার তৈরি করার জন্য এবং সেইসাথে মুছে ফেলার পরে ব্যবহার করার জন্য নিম্নোক্ত ক্যোয়ারী রয়েছে -

mysql> DELIMITER //mysql> প্রতিটি সারির জন্য ডেমোটেবিল থেকে মুছে ফেলার পরে ট্রিগার ইতিহাস_অফ_টেবিল তৈরি করুন @userName এর মধ্যে USER() নির্বাচন করুন; এখনই নির্বাচন করুন () @deleteDatetime এর মধ্যে; শেষ; //কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.18 সেকেন্ড)mysql> DELIMITER;

ট্রিগার কাজ করছে কি না তা পরীক্ষা করতে, টেবিল থেকে প্রথম রেকর্ড মুছে দিন −

mysql> DemoTable থেকে মুছুন যেখানে Id=1;কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.26 সেকেন্ড)

উপরে, আমরা টেবিল থেকে প্রথম রেকর্ড মুছে ফেলেছি। এর মানে হল DELETE কমান্ড ব্যবহার করার পরে ট্রিগার সক্রিয় হতে হবে -

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

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

তৈরি করবে
+----------------+| @userName |+----------------+| root@localhost |+----------------+1 সারি সেটে (0.00 সেকেন্ড)

যখনই ট্রিগার কাজ করে −

তখন এটি বর্তমান সময় প্রদর্শন করে
mysql> নির্বাচন করুন @deleteDatetime;

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

তৈরি করবে <প্রে>+---------+| @deleteDatetime |+---------+| 2019-07-09 21:06:31 |+----------------------+1 সারি সেটে (0.00 সেকেন্ড)
  1. মাইএসকিউএল ট্রিগারে 'প্রত্যেক সারির জন্য' কীভাবে কাজ করে?

  2. ট্রিগার এক্সিকিউশনের সময় মাইএসকিউএল কীভাবে ত্রুটিগুলি পরিচালনা করতে পারে?

  3. কিভাবে একটি MySQL টেবিলের সমস্ত সদৃশ রেকর্ড মুছে ফেলবেন?

  4. পাইথনে মাইএসকিউএল ডাটাবেসে ঢোকানোর পরে আমি কীভাবে আইডি পেতে পারি?