मैं एक डेटाबेस तालिका है कि लग रहा हैरखना एक नाशक पर कि क्या कोई अपवाद घटित आधार पर भिन्न कार्यवाही ले
तरहtry
{
db.execute("BEGIN");
// Lots of DELETE and INSERT
db.execute("COMMIT");
}
catch (DBException&)
{
db.execute("ROLLBACK");
}
मैं एक आरए II वर्ग तो मैं कर सकता में लेन-देन तर्क लपेट करना चाहते हैं अद्यतन करने के लिए कुछ कोड है बस
{
DBTransaction trans(db);
// Lots of DELETE and INSERT
}
लिखने लेकिन कैसे मैं इसके लिए नाशक लिखना चाहते हैं?
+1 इस तरह की चीजें कैसे की जाती हैं। यद्यपि एक समस्या है: क्या होगा यदि आप प्रतिबद्ध() को कॉल करना भूल जाते हैं? – sharptooth
और यदि आप लेनदेन चर बनाने के लिए भूल जाते हैं? आप सभी गलतियों को रोक नहीं सकते हैं। –
@ शार्पतोथ: क्या होगा यदि आप उन बदलावों को भूल गए जो आप पहले स्थान पर करना चाहते थे? मुझे नहीं लगता कि आप अक्षमता के खिलाफ सुरक्षा के लिए बहुत कुछ कर सकते हैं। – jalf