MCAWALA

SQL Topics Menu

SQL SAVEPOINT Statement क्या है? (SQL SAVEPOINT in Hindi)

SQL SAVEPOINT एक Transaction Control Language (TCL) command है जिसका उपयोग transaction के अंदर छोटे-छोटे checkpoints बनाने के लिए किया जाता है। इससे आप जरूरत पड़ने पर किसी विशेष point तक rollback कर सकते हैं, बिना पूरे transaction को undo किए।

📘 Syntax (सिंटैक्स)

SAVEPOINT savepoint_name;

savepoint_name एक user-defined नाम होता है जिससे हम बाद में उस savepoint तक rollback कर सकते हैं।

🎯 उदाहरण:

BEGIN;

INSERT INTO Students(Name, Age) VALUES ('Amit', 22);
SAVEPOINT sp1;

INSERT INTO Students(Name, Age) VALUES ('Suman', 24);
SAVEPOINT sp2;

DELETE FROM Students WHERE Name = 'Amit';

ROLLBACK TO sp1;

COMMIT;

ऊपर दिए गए उदाहरण में:

  • sp1 तक rollback किया गया है।
  • इसका मतलब 'Amit' का insert restore हो जाएगा।
  • लेकिन 'Suman' का insert और DELETE undo हो जाएंगे।

📌 SAVEPOINT के फायदे:

  • Complex transactions को manage करना आसान हो जाता है।
  • हर step पर control मिलता है rollback करने के लिए।
  • Debugging या testing करते समय बहुत उपयोगी होता है।

❌ SAVEPOINT हटाना (RELEASE SAVEPOINT):

RELEASE SAVEPOINT savepoint_name;

इससे आप किसी savepoint को remove कर सकते हैं।

📝 ध्यान दें:

  • SAVEPOINT केवल तब तक valid रहता है जब तक आप COMMIT या full ROLLBACK नहीं करते।
  • ROLLBACK TO savepoint के बाद COMMIT करने पर सभी changes save हो जाते हैं।

✅ निष्कर्ष:

SQL SAVEPOINT का उपयोग करके आप अपने database transaction को बेहतर तरीके से control कर सकते हैं। यह खासकर तब उपयोगी होता है जब आप बड़ी संख्या में operations perform कर रहे हों और step-by-step undo करने की जरूरत हो।