KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
Ok, I know the difference between commit and rollback and what these operations are supposed to do. However, I am not certain what to do in cases where I can achieve the same behavior when using commit(), rollback() and/or do nothing. For instance, let's say I have the following code which executes a query without writing to db: I am working on an application which communicates with SQLite database. try { doSomeQuery() // b) success } catch (SQLException e) { // a) failed (because of exception) } Or even more interesting, consider the following code, which deletes a single row: try { if (deleteById(2)) // a) delete successful (1 row deleted) else // b) delete unsuccessful (0 row deleted, no errors) } catch (SQLException e) { // c) delete failed (because of an error (possibly due to constraint violation in DB)) } Observe that from a semantic standpoint, doing commit or rollback in cases b) and c) result in the same behavior. Generally, there are several choices to do inside each case (a, b, c): commit rollback do nothing Are there any guidelines or performance benefits of choosing a particular operation? What is the right way? Note: Assume that auto-commit is disabled.
Tags (comma-separated)
Save Edits
Cancel