सीधे मुख्य सामग्री पर जाएं

trigger in dbms : ट्रिगर

 आज हम computers in hindi मे trigger in dbms (ट्रिगर क्या है)  के बारे मे जानेगे और इसके types of triggers व trigger example के बारे मे तो चलिए शुरु करते हैं-

what is the meaning of triggered in hindi ( ट्रिगर क्या है ):-

डेटाबेस ट्रिगर सामान्य भाषा में event किसी घटना को कहा जाता है , डेटाबेस में event से मतलब किसी घटना से है जो डेटाबेस से जुड़ी हो , मतलब डेटाबेस पर किसी कमाण्ड का रन होना event है । 
ट्रिगर ऐसी प्रोग्रामिंग इकाई है जो कि किसी टेबल के लिए किसी डेटाबेस event पर स्वतः ही रन हो जाते हैं इसलिए इन्हें event activated program units ( ईवेट सक्रिय प्रोग्राम इकाई ) कहा जाता है । ट्रिगर्स में सभी प्रकार के DML कमाण्ड्स दिए जा सकते हैं ।
प्रत्येक ट्रिगर का नाम schema उस के लिए यूनीक होना चाहिए , अर्थात् ट्रिगर का नाम दोहराया जाना नहीं चाहिए । एक ट्रिगर को एक ही टेबल के लिए बनाया जा सकता है , एक से अधिक टेबल्स के लिए ट्रिगर बनाने हों तो उन्हें अलग - अलग बनाया जाएगा । 
किसी डेटाबेस ऑब्जेक्ट को बनाने वाला user ( प्रयोगकर्ता ) स्वयं के ऑब्जेक्ट के लिए ट्रिगर बना सकता है । इसके लिए उसे ट्रिगर का ईवेन्ट भी निर्धारित करना होगा । एक ट्रिगर को एक से अधिक events के लिए लिखा जा सकता है , परन्तु उन सभी टिगर्स की timing एक ही होती है ।

Trigger syntax: -

Create [or Replace] Trigger <Trigger Name> 
<Before/After/Instead of> <Insert/Update/Delete> 
ON <Object Name> 
[When <Condition>] [For Each Row] 
Declare 
<Declaration Section>
Begin 
            <Trigger Action Section> 
Exception 
            <Exception Section> 
End;

Types of triggers in dbms: different types of triggers: -

1. Timing Based Triggers 
a. Before Level Triggers 
b. After Level Triggers 

2. Level Based Trigger 
a. Row Level Triggers 
b. Statement Level Triggers

1. Timing Based Triggers:-

 इस प्रकार के ट्रिगर्स समय आधारित होते हैं । यह समय ईवेन्ट पर आधारित होता है । timing दो प्रकार की या तो before statement या after statement होती है । इसलिए इस प्रकार के ट्रिगर या तो निर्धारित ईवेन्ट में स्टेटमेन्ट execute होने से पहले या निर्धारित ईवेन्ट में स्टेटमेन्ट execute के बाद execute होते हैं ।

Before Level Triggers :-

इस प्रकार के ट्रिगर निर्धारित ईवेन्ट में स्टेटमेन्ट execute होने से पहले स्वत : ही execute होते हैं । 
Triggers example:-
create or replace trigger mytrig 1
 before delete on emp 
for each row 
Begin 
insert into emp_backup ( empno . ename . job , sal , comm 
values ( : old.empno , cold.ename , cold.job.:old.sal , old.com End :
/

After level triggers:-

इस प्रकार के ट्रिगर निर्धारित ईवेन्ट में स्टेटमेन्ट execute  होने के बाद execute  होते हैं । 
Triggers example: -
 create or replace trigger mytrig2 
after insert on emp 
for each row 
when ( new.comm > 500 ) 
            Declare 
                        bns number : 
Begin 
                        bns := : new.comm +50;
                        insert into bonus ( empno , ename . job . bonus ) 
                        values ( : new.empno , : new.ename , : new.job . bus 
End :
/

2. Level based triggers:-

इस प्रकार के ट्रिगर दो प्रकार के होते हैं 

Row Level Triggers :-

इस प्रकार के ट्रिगर में reference clauses  जैसे कि : new . old का प्रयोग किया जा सकता है । इस प्रकार के ट्रिगर स्टेटमेन्ट से प्रभावित प्रत्येक रिकॉर्ड के लिए execute होते हैं । इसके लिए for each row लिखा जाता है । 

Statement Level Triggers:-

इस प्रकार के ट्रिगर्स में for each row नहीं लिखा जाता है । ये ट्रिगर्स सम्पूर्ण ट्रिगर स्टेटमेन्ट की ओर से एक बार ही execute होते हैं । इस प्रकार के ट्रिगर में reference clauses जैसे कि : new . : old का प्रयोग नहीं किया जा सकता है ।
Triggers example: -
create or replace trigger mytrig3 
before delete on student 
Begin 
insert into log(unae, date_d, time_d) 
values( user, sysdate, to char(sysdate, 'HH::SS:):
 End:
/

Use of triggers (ट्रिगर के उपयोग ):-

1. किसी ईवेन्ट को होने से रोकना 

यदि हम किसी कंडीशन के होने पर ईवेन्ट को होने से रोकना चाहते हैं या किसी विशेष कंडीशन में उस ईवेन्ट के प्रभाव को समाप्त करना चाहते हैं तो यह ट्रिगर के द्वारा सम्भव है । इसके लिए हमें अपने ट्रिगर के द्वारा कोई error प्रदर्शित करनी होती है।

2. किसी विशिष्ट कंडीशन के दौरान किसी विशिष्ट कमाण्ड का स्वतः क्रियान्वयन करना 

यदि किसी कंडीशन के दौरान किसी अन्य अथवा  कमाण्ड बिना प्रयोगकर्ता के रन किए स्वतः ही रन हो जाए , ऐसा करने के लिए ट्रिगर का प्रयोग किया जाता है । जैसे किसी रिकॉर्ड के डिलीट होने पर वह बैकअप टेबल में स्वत : से संग्रहित हो जाए । 

3. डेटाबेस पर DML कमाण्ड्स के रन होने पर स्वत : क्रियान्वयन 

यदि हम कोई ऐसा अपडेशन या वैल्यू इन्सर्शन चाहते हैं जो किसी विशिष्ट कमाण्ड के क्रियान्वयन होने पर ही हो तो इसके लिए भी ट्रिगर का प्रयोग किया जाता है ।

4. डेटाबेस को सुरक्षा एवं नियंत्रण 

ट्रिगर के माध्यम से भी डेटाबेस को सुरक्षा प्रदान की जा सकती है । इसके माध्यम सेे  DML कमाण्ड्स के प्रभावों को नियंत्रित किया जा सकता है । इसके द्वारा डेटाबेस में इन्सर्ट की जाने वैल्यू को भी नियंत्रित किया जा सकता है , जैसे कि डेटाबेस में वर्लक का वेतन कम से कम रू . 5000 होना चाहिए , अथवा जिनका वेतन से रू . 15000 अधिक है उनके रिकॉर्ड स्वतः ही दूसरे डेटाबेस में कॉपी हो जाएं तथा उनके टैक्स की गणना भी स्वतः ही हो जाए ।

टिप्पणियाँ

इस ब्लॉग से लोकप्रिय पोस्ट

half adder and full adder in hindi

  आज हम  computer in hindi  मे  आज हम half adder and full adder in hindi - computer system architecture in hindi   के बारे में जानकारी देगे क्या होती है तो चलिए शुरु करते हैं-   के बारे में जानकारी देगे क्या होती है तो चलिए शुरु करते हैं- half adder and full adder in hindi:- 1. half adder in hindi 2. full adder in hindi  1. Half adder in hindi:- half adder  सबसे basic digital arithmetic circuit 2 binary digits का जोड़ है।  एक combination circuit जो दो bits के arithmetic जोड़ को display करता है उसे half adder कहा जाता है।   half adder के इनपुट variable को Augend और addend bits कहा जाता है। आउटपुट योग और Carrie को बदलता है। दो आउटपुट variable Specified करना आवश्यक है क्योंकि 1 + 1 का योग बाइनरी 10 है, जिसमें दो अंक हैं। हम दो इनपुट वेरिएबल्स के लिए x और y और दो आउटपुट वेरिएबल के लिए S (योग के लिए) और C (कैरी के लिए) असाइन करते हैं। C output 0 है जब तक कि दोनों इनपुट 1 न हों। S आउटपुट योग के कम से कम महत्वपूर्ण बिट का Representation करता है। दो आउटपुट के लिए boolean function सीधे t

physical address and logical address in hindi

आज हम  computer course in hindi  मे हम  physical address and logical address in hindi  के बारे में बताएगें तो चलिए शुरु करते हैं-  physical address and logical address in hindi:- physical address and logical address  कोई भी address CPU द्वारा बनाया जाता है उसे लॉजिकल एड्रेस (logical address) कहते हैं और जो address memory में दिखता है उसे हम फिजिकल मैमोरी एड्रैस कहते हैं ) जिसमें Compile time और Load time address binding है कुछ converted करता है जब logical और physical address समान होते हैं अर्थात् एक जैसे होते हैं लेकिन action time address binding scheme में कुछ change आता है और जब logical और physical में अंतर होता है । इसलिये हम logic address को वर्चुअल एड्रैस ( Virtual Address ) भी कहते है और इसी का प्रयोग करते हैं । logical या virtual address हम कह सकते हैं और सारे logical address जो कि एक प्रोग्राम के द्वारा बनाये जाते हैं उन्हें लॉजिकल एड्रैस स्पेस ( Logical Address Space ) कहते हैं । इसके साथ ही जो physical address इन logical address के साथ होते हैं उन्हें हम फिजिकल एड्रैस स्पेस (