MCAWALA

SQL Transactions in Hindi: COMMIT, ROLLBACK और SAVEPOINT क्या होते हैं?

अगर आप SQL सीख रहे हैं और database operations को बेहतर तरीके से control करना चाहते हैं, तो SQL Transactions का ज्ञान होना बहुत जरूरी है। एक transaction database की ऐसी operation unit होती है जिसमें एक या एक से ज्यादा SQL statements execute होते हैं, और यह सुनिश्चित करती है कि data integrity बनी रहे।

इस लेख में हम विस्तार से जानेंगे:

  • SQL Transaction क्या होता है?
  • COMMIT, ROLLBACK और SAVEPOINT क्या हैं?
  • इनका Syntax और उपयोग
  • Real-life examples

✅ SQL Transaction क्या होता है?

Transaction एक logical unit होती है जो एक या अधिक database operations को एक साथ group करती है। यह सुनिश्चित करती है कि या तो सभी operations सफल हों या एक भी नहीं। यदि किसी भी step में error होता है, तो पूरी transaction को rollback किया जा सकता है।

🎯 Transaction की विशेषताएँ (ACID Properties)

  1. Atomicity – या तो पूरी transaction सफल हो या पूरी असफल हो।
  2. Consistency – Transaction के बाद database valid state में रहे।
  3. Isolation – एक transaction दूसरे से प्रभावित न हो।
  4. Durability – Transaction के बाद data permanently save हो जाए।

🔐 COMMIT, ROLLBACK और SAVEPOINT क्या होते हैं?

🔸 1. COMMIT Statement

जब भी कोई transaction सफलतापूर्वक पूरी हो जाती है, तो हम उसे permanently database में save करने के लिए COMMIT करते हैं।

📌 Syntax:

COMMIT;

📌 Example:

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

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

COMMIT;

👉 ऊपर की transaction में दो accounts के बीच पैसे transfer किए गए। COMMIT होने पर यह data हमेशा के लिए save हो जाएगा।

🔸 2. ROLLBACK Statement

अगर किसी transaction के दौरान कोई error आ जाती है या हम change को undo करना चाहते हैं, तो हम ROLLBACK का इस्तेमाल करते हैं। यह पूरी transaction को undo कर देता है।

📌 Syntax:

ROLLBACK;

📌 Example:

UPDATE products
SET stock = stock - 10
WHERE product_id = 201;

-- कोई error आया

ROLLBACK;

👉 इस उदाहरण में यदि update के बाद कोई error आती है, तो ROLLBACK के जरिए change वापस ले लिए जाएंगे।

🔸 3. SAVEPOINT Statement

SAVEPOINT एक intermediate point होता है जहां तक हम rollback कर सकते हैं। यह बड़े transactions में बहुत उपयोगी होता है।

📌 Syntax:

SAVEPOINT savepoint_name;

📌 Example:

BEGIN;

UPDATE orders SET status = 'Packed' WHERE order_id = 1;
SAVEPOINT sp1;

UPDATE orders SET status = 'Shipped' WHERE order_id = 1;
-- कोई error आया

ROLLBACK TO sp1;

COMMIT;

👉 इस example में अगर “Shipped” update में कोई error आती है, तो हम केवल उस part को rollback कर सकते हैं और “Packed” वाला change बना रहेगा।

🔁 COMMIT vs ROLLBACK vs SAVEPOINT

FeatureCOMMITROLLBACKSAVEPOINT
उद्देश्यChanges save करनाChanges को undo करनाएक checkpoint बनाना
Scopeपूरी transactionपूरी transaction या savepoint तकPartial rollback की सुविधा
Use CaseSuccess के बादError आने परMulti-step transaction में

💡 Real-life Use Cases

  • Banking: पैसे ट्रांसफर में COMMIT/ROLLBACK का उपयोग।
  • eCommerce: Order processing में SAVEPOINT का उपयोग।
  • Inventory Management: Quantity update करते समय transaction safety।

📚 SQL Transaction सीखने के Tips

  • Transaction को समझने के लिए real-life scenarios पर practice करें।
  • MySQL/PostgreSQL जैसे databases में transaction को enable करें।
  • Practice करें: COMMIT, ROLLBACK और SAVEPOINT के साथ test queries लिखें।

🔚 निष्कर्ष

SQL Transactions database integrity बनाए रखने का एक बहुत ही महत्वपूर्ण हिस्सा हैं। आपने इस लेख में जाना कि SQL में COMMIT, ROLLBACK और SAVEPOINT कैसे काम करते हैं और इन्हें real-life में कैसे apply किया जाता है। अगर आप SQL Transactions in Hindi में master बनना चाहते हैं, तो इन concepts की गहराई से practice करें।

🔗 आगे पढ़ें:

👉 SQL Indexes और Views क्या होते हैं – विस्तार से जानिए
👉 SQL Joins in Hindi – Types, Syntax और Examples
👉 SQL Subqueries in Hindi – Nested Queries Explained

Leave a Comment