SQL SAVEPOINT एक Transaction Control Language (TCL) command है जिसका उपयोग transaction के अंदर छोटे-छोटे checkpoints बनाने के लिए किया जाता है। इससे आप जरूरत पड़ने पर किसी विशेष point तक rollback कर सकते हैं, बिना पूरे transaction को undo किए।
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;
ऊपर दिए गए उदाहरण में:
RELEASE SAVEPOINT savepoint_name;
इससे आप किसी savepoint को remove कर सकते हैं।
SQL SAVEPOINT का उपयोग करके आप अपने database transaction को बेहतर तरीके से control कर सकते हैं। यह खासकर तब उपयोगी होता है जब आप बड़ी संख्या में operations perform कर रहे हों और step-by-step undo करने की जरूरत हो।