SQL में Transactions क्या हैं? | SQL Transactions in Hindi

डेटाबेस में जब हम कई SQL commands को एक साथ execute करते हैं, तो उस प्रक्रिया को Transaction (ट्रांजेक्शन) कहा जाता है।
Simple Language में:  SQL Transaction कई database operations का ऐसा group होता है जो या तो पूरी तरह सफल होता है या पूरी तरह रद्द हो जाता है।

इसका मुख्य उद्देश्य data को सुरक्षित (Secure), सही (Valid), और consistent (एक जैसा) बनाए रखना है।

Transaction क्यों जरूरी है?

मान लीजिए किसी बैंक से पैसे काटे गए, और दूसरे अकाउंट में add नहीं हुए। यदि transaction न हो तो data गलत हो सकता है।
– Transaction ensures:

  • डेटा आधा-अधूरा न बदले
  • गलती होने पर परिवर्तनों को वापस कर दिया जाए
  • users को correct और reliable data मिले

 

SQL Transaction की Properties (ACID Properties)

Transactions को reliable बनाने के लिए SQL में 4 मुख्य properties होती हैं जिन्हें ACID Properties कहा जाता है:

PropertyMeaning
A – AtomicityTransaction या तो 100% पूरा होगा या बिल्कुल नहीं होगा (all or none)
C – ConsistencyTransaction के बाद database हमेशा valid state में रहेगा
I – Isolationएक transaction दूसरे transaction के data को affect नहीं करेगा
D – DurabilityCommit होने के बाद data हमेशा के लिए सुरक्षित हो जाएगा

 

1. Atomicity

Transaction बीच में fail होने पर किए गए सभी changes undo होकर database पहली स्थिति में लौट आता है।

2. Consistency

Data किसी भी स्थिति में गलत format या invalid नहीं होगा। Transaction हमेशा data को valid state में रखता है।

3. Isolation

एक समय में हजारों transactions हो सकते हैं, फिर भी वे एक-दूसरे को disturb नहीं करते।

4. Durability

एक बार data COMMIT हो जाए तो system failure/crash होने पर भी वह data सुरक्षित रहता है।

SQL में Transaction Control Commands

CommandUse
BEGIN/START TRANSACTIONTransaction शुरू करने के लिए
COMMITChanges को permanent करने के लिए
ROLLBACKError होने पर सभी changes cancel करने के लिए
SAVEPOINTTransaction में checkpoint बनाने के लिए
RELEASE SAVEPOINTSavepoint हटाने के लिए

 

Commands Syntax

BEGIN TRANSACTION;
-- your queries here
COMMIT;
ROLLBACK;

SQL Transaction Example (Bank Money Transfer)

मान लीजिए हम एक अकाउंट से पैसे काटकर दूसरे अकाउंट में जमा कर रहे हैं:

BEGIN TRANSACTION;

UPDATE accounts 
SET balance = balance - 500 
WHERE account_id = 101;

UPDATE accounts 
SET balance = balance + 500 
WHERE account_id = 202;

COMMIT;

यदि transaction के बीच error आ जाए:

BEGIN TRANSACTION;

UPDATE accounts 
SET balance = balance - 500 
WHERE account_id = 101;

-- मान लो यहाँ error हो जाए
ROLLBACK;

Result: किसी भी account में कोई बदलाब नहीं होगा। Transaction cancel हो जाएगा।

SAVEPOINT के साथ Transaction Example

BEGIN;

UPDATE accounts SET balance = balance - 200 WHERE account_id = 101;
SAVEPOINT step1;

UPDATE accounts SET balance = balance + 200 WHERE account_id = 202;

ROLLBACK TO step1;  -- केवल दूसरे step को cancel करेगा

COMMIT;  -- पहला step save रहेगा

SQL Transactions के उपयोग

  1. Online banking system
  2. E-commerce payment
  3. Booking systems (Train/Flight movie ticket)
  4. Inventory update systems

इन्हें भी पढ़े –

  1. DBMS क्या है DBMS के प्रकार और कार्य की पूरी जानकारी | DBMS In Hindi
  2. डेटाबेस यूजर्स क्या है?
  3. डेटा इंडिपेंडेंस क्या है
  4. DBMS के लाभ
  5. Characteristics Of DBMS In Hindi
  6. डेटा मॉडल क्या है?
  7. डेटाबेस स्कीमा क्या है
  8. इंस्टैंस क्या है
  9. डेटाबेस इंटरफ़ेस क्या है
  10. डेटाबेस लैंग्वेज क्या है
  11. Classification of DBMS in Hindi
  12. Entity Set in DBMS
  13. DBMS Architecture in Hindi
  14. Types of Data Models in Hindi
  15. Attributes in DBMS in Hindi
  16. Entity Set in DBMS (Hindi)
  17. Entity Types in DBMS (Hindi)
  18. Types of Attributes in DBMS
  19. ER Model in DBMS (E-R मॉडल) क्या है?
  20. Entities के बीच संबंध
  21. Domain in DBMS
  22. Tuples in DBMS
  23. SQL में Joins क्या हैं?
  24. Primary Key in DBMS
  25. DBMS Keys in Hindi
  26. DBMS Data Integrity in Hindi
  27. Relational Algebra in DBMS
  28. Normalization in DBMS क्या है?
  29. BCNF (Boyce-Codd Normal Form) in DBMS
  30. Functional Dependency in DBMS
  31. Non-Loss Decomposition in DBMS
  32. SQL Data Types in Hindi
  33. Create Table in SQL in Hindi
  34. SQL DROP TABLE और ALTER TABLE in Hindi
  35. SQL Indexes in Hindi
  36. SDLC in Hindi
  37. DBLC in Hindi
  38. SQL Views in Hindi
  39. PL/SQL PROCEDURES in hindi
  40. Database Normalization in Hindi
  41. Domain Key Normal Form in Hindi
  42. SQL Objects in Hindi
  43. Aggregation, Generalization, Specialization and Association in Hindi
  44. Data Dictionary क्या है?
  45. डेटा वेयरहाउसिंग क्या है?
  46. डाटा माइनिंग क्या है?
  47. File Organization in Hindi DBMS
  48. Relational Model in Hindi – रिलेशनल मॉडल क्या है?
  49. RDBMS Applications in Hindi
  50. MySQL क्या है?
  51. Parallel Database in Hindi
  52. Database Costs and Risk Factors in Hindi
  53. डिस्ट्रिब्यूटेड डेटाबेस क्या होता है?
  54. Operational Data vs Decision Support Data in Hindi
  55. फाइल ओरिएंटेड सिस्टम के लाभ और हानियाँ
  56. DBMS में Mapping Constraints क्या होते हैं?
  57. DBMS vs File System in Hindi
  58. Validation Based Protocol in Hindi
  59. Multivalued Dependency in DBMS in Hindi & Join Dependency in Hindi
  60. Relationship Set in DBMS in Hindi
  61. PL/SQL Exception Handling in Hindi
  62. Data Types in MySQL in Hindi
  63. MySQL डेटाबेस क्या है?
  64. Create & Alter Table in MySQL in Hindi
  65. MySQL Function in Hindi
  66. Database Security in Hindi
  67. SQL क्या है?
  68. Relational Calculus in DBMS in Hindi
  69. Inference Rules in DBMS in Hindi
  70. Database Recovery in Hindi
  71. SQL Operators in Hindi
  72. SQL Functions क्या है?

 

निष्कर्ष (Conclusion)

SQL Transaction database को सुरक्षित रखने का सबसे प्रभावी तरीका है। यह data को हमेशा accurate, reliable और consistent बनाए रखता है। Transaction का उपयोग banking से लेकर online ordering तक हर जगह होता है, जहाँ data एक-से-अधिक जगह update होता है।

Leave a Comment