মধ্যে পার্থক্য কি FOR
এবং AFTER
ট্রিগার?
মধ্যে পার্থক্য কি FOR
এবং AFTER
ট্রিগার?
উত্তর:
কোনও পার্থক্য নেই, তারা একই জিনিস করে।
CREATE TRIGGER trgTable on dbo.Table FOR INSERT,UPDATE,DELETE
হিসাবে একই
CREATE TRIGGER trgTable on dbo.Table AFTER INSERT,UPDATE,DELETE
ট্রিগারটি INSTEAD OF
আলাদা, এবং অন্তর্ভুক্ত টেবিলগুলিতে উপযুক্ত মানগুলি সন্নিবেশ করার জন্য sertোকানোর আগে এবং পরিবর্তে আগুন লাগে এবং ভিউগুলিতে ব্যবহার করা যেতে পারে।
@ বেন একদম ঠিক আছে।
এখানে এমএসডিএন নিবন্ধটি এসকিউএল সার্ভার ট্রিগারগুলি এক্সপ্লোর করে
নিবন্ধ থেকে একটি অনুচ্ছেদ:
এই সিনট্যাক্সটি এসকিউএল সার্ভারের পুরানো সংস্করণগুলিতেও গ্রহণযোগ্য। তবে, এখন যেহেতু এসকিউএল সার্ভার 2000 এ দুটি ধরণের ট্রিগার রয়েছে, আমি ফ্রি ট্রিগারগুলি আফটার ট্রিগার হিসাবে উল্লেখ করতে পছন্দ করি। সুতরাং, এই নিবন্ধটির বাকী অংশগুলির জন্য আমি ট্রাইগারগুলির পরে বা ইনস্টল করা হয়।
আপনি আগে যে আফ্রি ট্রিগারটি দেখেছেন তার মতো এই ট্রিগারও শেষের নামের ক্ষেত্রের পরিবর্তনগুলি প্রতিরোধ করে। তবে এটি পূর্ববর্তী উদাহরণের তুলনায় এই বিধি বিধি কার্যকর করে different কারণ আপডেটের বিবৃতিটির জায়গায় ইনস্টল অফ ট্রিগার অগ্নিকাণ্ডের কারণে, ইনস্টিটিউট অফ ট্রিগার তারপরে মূল্যায়ন করে যদি ব্যবসার নিয়ম পরীক্ষাটি পাস হয় বা না হয়। যদি ব্যবসায়ের নিয়ম পরীক্ষাটি পাস হয়, তবে আপডেটটির জন্য ইনস্টল অফ ট্রিগারটি অবশ্যই স্পষ্টভাবে আবার আপডেটের বিবৃতিটি অনুরোধ করবে।
এরপরে নির্দিষ্ট করে যে ডিএমএল ট্রিগারটি তখনই বরখাস্ত করা হয় যখন ট্রিগার এসকিউএল বিবৃতিতে সুনির্দিষ্ট সমস্ত ক্রিয়াকলাপ সফলভাবে কার্যকর করা হয়। এই ট্রিগার আগুনের আগে সমস্ত রেফারেনশিয়াল ক্যাসকেড ক্রিয়া এবং সীমাবদ্ধ চেকগুলিও সফল হতে হবে। যখন কেবলমাত্র একটি কীওয়ার্ড নির্দিষ্ট করা হয় তখন আফটারটি ডিফল্ট হয়।
ট্রিগারগুলির পরে দর্শনে সংজ্ঞা দেওয়া যায় না।
ইনস্টল অফ সুনির্দিষ্ট করে যে ডিএমএল ট্রিগারটি ট্রিগারকারী এসকিউএল স্টেটমেন্টের পরিবর্তে কার্যকর করা হয়েছে, সুতরাং, ট্রিগার বিবৃতিগুলির ক্রিয়াকে ওভাররাইড করে। ডিডিএল বা লগন ট্রিগারগুলির জন্য ইনস্টল অফ সুনির্দিষ্ট করা যায় না।
https://docs.microsoft.com/en-us/sql/t-sql/statements/create-trigger-transact-sql