PL/SQL Trigger in Hindi
जब भी हम किसी table में data insert, update या delete करते है और हम चाहते है कि उस समय अपने आप कोई action (जैसे- log entry, validation, या calculation) चल जाए तो इसके लिए हम Trigger का इस्तेमाल करते है।
सरल शब्दो मे – Trigger एक stored program होता है जो अपने आप (automatically) execute होता है जब किसी table पर कोई DML operation किया जाता है।

Trigger क्या है? (What is Trigger in PL/SQL)
Trigger एक stored procedure की तरह होता है लेकिन इसे manually call नही किया जाता। यह automatically execute हो जाता है जब कोई predefined event (INSERT, UPDATE, DELETE) होता है।
उदाहरण के लिए – अगर किसी employee का salary update होता है तो trigger अपने आप उस change को history table में save कर सकता है।
Trigger कैसे काम करता है?
जब किसी table पर DML (Data Manipulation Language) operations होते है, जैसे INSERT, UPDATE या DELETE तो Oracle database उस event को detect करता है और उससे जुड़ा हुआ trigger अपने आप fire (execute) कर देता है।
इसलिए trigger को explicitly call नही किया जा सकता वह खुद event के साथ execute होता है।
Trigger का Syntax (Syntax of Creating a Trigger)
CREATE OR REPLACE TRIGGER trigger_name
BEFORE | AFTER
INSERT | UPDATE | DELETE
ON table_name
FOR EACH ROW
BEGIN
-- Trigger body (statements to execute)
END;
/Explanation
| Keyword | Description |
|---|---|
| CREATE OR REPLACE TRIGGER | Trigger को define करता है |
| BEFORE / AFTER | बताता है कि trigger event से पहले या बाद में चलेगा |
| INSERT / UPDATE / DELETE | Trigger किस DML operation पर execute होगा |
| ON table_name | किस table पर trigger लागू है |
| FOR EACH ROW | Row-level trigger दर्शाता है |
| BEGIN…END | Trigger body – वह कोड जो execute होगा |
Example – Salary Update Trigger
CREATE OR REPLACE TRIGGER salary_audit_trigger
AFTER UPDATE ON employees
FOR EACH ROW
BEGIN
INSERT INTO salary_audit (emp_id, old_salary, new_salary, update_date)
VALUES (:OLD.emp_id, :OLD.salary, :NEW.salary, SYSDATE);
END;
/Explanation –
- जब भी
employeestable में salary update होगी यह trigger अपने आप चलेगा। - यह पुराना और नया salary डेटा
salary_audittable में store कर देगा।
Types of Triggers (ट्रिगर के प्रकार)
PL/SQL में triggers मुख्य रूप से दो प्रकार के होते है –
Row Level Trigger (रो लेवल ट्रिगर)
- यह तब execute होता है जब हर एक row पर कोई change होता है।
- Example – यदि 10 rows update होती हैं तो trigger 10 बार चलेगा।
Syntax –
CREATE OR REPLACE TRIGGER row_trigger
BEFORE INSERT ON employees
FOR EACH ROW
BEGIN
DBMS_OUTPUT.PUT_LINE('Row level trigger executed.');
END;
/Statement Level Trigger (स्टेटमेंट लेवल ट्रिगर)
- यह पूरे SQL statement के लिए सिर्फ एक बार execute होता है।
- Example – यदि 100 rows update होती हैं, तब भी trigger सिर्फ एक बार चलेगा।
Syntax –
CREATE OR REPLACE TRIGGER stmt_trigger
AFTER INSERT ON employees
BEGIN
DBMS_OUTPUT.PUT_LINE('Statement level trigger executed.');
END;
/Difference Between Row Level and Statement Level Trigger
Trigger के फायदे (Advantages of Trigger)
| लाभ | विवरण |
|---|---|
| Automation | Specific events पर automatic actions करता है |
| Data Integrity | Database consistency बनाए रखता है |
| Auditing | Changes की log record रखता है |
| Validation | Insert/Update से पहले data verify करता है |
| Error Prevention | गलत data entry रोकता है |
Trigger के नुकसान (Disadvantages)
- Complex debugging (क्योंकि triggers अपने आप चलते है)
- Large number of triggers से performance धीमी हो सकती है
- Indirect changes track करना मुश्किल होता है
Common Trigger Uses
- Record changes log करना (History table बनाना)
- Business rules लागू करना
- Data validation या calculation automate करना
- Notification या alert generate करना
- Audit trails maintain करना
इन्हें भी पढ़े –
- DBMS क्या है DBMS के प्रकार और कार्य की पूरी जानकारी | DBMS In Hindi
- डेटाबेस यूजर्स क्या है?
- डेटा इंडिपेंडेंस क्या है
- DBMS के लाभ
- Characteristics Of DBMS In Hindi
- डेटा मॉडल क्या है?
- डेटाबेस स्कीमा क्या है
- इंस्टैंस क्या है
- डेटाबेस इंटरफ़ेस क्या है
- डेटाबेस लैंग्वेज क्या है
- Classification of DBMS in Hindi
- Entity Set in DBMS
- DBMS Architecture in Hindi
- Types of Data Models in Hindi
- Attributes in DBMS in Hindi
- Entity Set in DBMS (Hindi)
- Entity Types in DBMS (Hindi)
- Types of Attributes in DBMS
- ER Model in DBMS (E-R मॉडल) क्या है?
- Entities के बीच संबंध
- Domain in DBMS
- Tuples in DBMS
- SQL में Joins क्या हैं?
- Primary Key in DBMS
- DBMS Keys in Hindi
- DBMS Data Integrity in Hindi
- Relational Algebra in DBMS
- Normalization in DBMS क्या है?
- BCNF (Boyce-Codd Normal Form) in DBMS
- Functional Dependency in DBMS
- Non-Loss Decomposition in DBMS
- SQL Data Types in Hindi
- Create Table in SQL in Hindi
- SQL DROP TABLE और ALTER TABLE in Hindi
- SQL Indexes in Hindi
- SDLC in Hindi
- DBLC in Hindi
- SQL Views in Hindi
- PL/SQL PROCEDURES in hindi
- Database Normalization in Hindi
- Domain Key Normal Form in Hindi
- SQL Objects in Hindi
- Aggregation, Generalization, Specialization and Association in Hindi
- Data Dictionary क्या है?
- डेटा वेयरहाउसिंग क्या है?
- डाटा माइनिंग क्या है?
निष्कर्ष (Conclusion)
PL/SQL Trigger एक ऐसा powerful feature है जो database automation और data security दोनों प्रदान करता है। Trigger अपने आप execute होता है जब कोई DML event होता है। Row-level और statement-level triggers database को smart और self-controlled बनाते है।