Forums Register Login

why my rollback doesn't work?

+Pie Number of slices to send: Send
hi everyone, I wrote a piece of code to test the rollback function.However, it doesn't work, can some one scanning through my code and tell me what the problem is .



Thanks
+Pie Number of slices to send: Send
What does "it doesn't work" mean? What exactly happens if you run the code?
+Pie Number of slices to send: Send
 

Ulf Dittmer wrote:What does "it doesn't work" mean? What exactly happens if you run the code?



the entry"123456" and "root" have been inserted into the database which are not supposed to be inserted since the rollback was called!
+Pie Number of slices to send: Send
Which database are you using?
+Pie Number of slices to send: Send
 

Paul Sturrock wrote:Which database are you using?



I am using Mysql
+Pie Number of slices to send: Send
Make sure you change the Storage engine of your table to InnoDB
I think the default engine MyISAM doesnt support Transactions
Try it and let me know
+Pie Number of slices to send: Send
 

Arpit Panwar wrote:Make sure you change the Storage engine of your table to InnoDB
I think the default engine MyISAM doesnt support Transactions
Try it and let me know



Thanks Arpit, It works after change the engine from MyISAM to InnoDB.

Thanks for your help.
+Pie Number of slices to send: Send
 

wei liu wrote:

Arpit Panwar wrote:Make sure you change the Storage engine of your table to InnoDB
I think the default engine MyISAM doesnt support Transactions
Try it and let me know



Thanks Arpit, It works after change the engine from MyISAM to InnoDB.

Thanks for your help.

Hi .. i too have the same problem. here in this case there is only one sql stmt... i have a set of updates and deletes .. and if i use the roolbak will it work?... thanks in advance

 
+Pie Number of slices to send: Send
Yes, use the same connection object for all and commit after all are successful, rollback otherwise.

Jhakda
+Pie Number of slices to send: Send
Thank u. I have another doubt o use the same connection for all the statements.. should i commit each after each stmt or i can commit at the end .
And can i use commit after the rollback?
+Pie Number of slices to send: Send
Since you said you have more than 1 sql, i presume you want to do an atomic transaction. We normally commit after successful completion of all transactions, roll back otherwise.

Jhakda
+Pie Number of slices to send: Send
 

Jhakda Velu wrote:Since you said you have more than 1 sql, i presume you want to do an atomic transaction. We normally commit after successful completion of all transactions, roll back otherwise.

Jhakda

can i use rollback for DDL ... i think we cant... but wanted to know whether ther is any other method for doing it

 
+Pie Number of slices to send: Send
 

vidhya Narayanan wrote:

Jhakda Velu wrote:Since you said you have more than 1 sql, i presume you want to do an atomic transaction. We normally commit after successful completion of all transactions, roll back otherwise.

Jhakda

can i use rollback for DDL ... i think we cant... but wanted to know whether ther is any other method for doing it



DDL is usually not transactional, so no.
+Pie Number of slices to send: Send
 

wei liu wrote:

Arpit Panwar wrote:Make sure you change the Storage engine of your table to InnoDB
I think the default engine MyISAM doesnt support Transactions
Try it and let me know



Thanks Arpit, It works after change the engine from MyISAM to InnoDB.

Thanks for your help.


Pleased to help
+Pie Number of slices to send: Send
 

Paul Sturrock wrote:

vidhya Narayanan wrote:

Jhakda Velu wrote:Since you said you have more than 1 sql, i presume you want to do an atomic transaction. We normally commit after successful completion of all transactions, roll back otherwise.

Jhakda

can i use rollback for DDL ... i think we cant... but wanted to know whether ther is any other method for doing it



DDL is usually not transactional, so no.



I have a method to perform a rollback on the ddl statements. A method with all alter commands. This works fine if there is any error in the end of the actual code. If the actual code fails in-between the rollback method is called but the issue is there is an error while the alter stmts execute that were not created at all. Can anyone help me.
Willie Smits increased rainfall 25% in three years by planting trees. Tiny ad:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com


reply
reply
This thread has been viewed 5102 times.
Similar Threads
Doubt on Sun Assessment Q26
how to call a javabean method from jsp using setproperty
Url cannot be null error :(
need java logic
An illegal attempt to commit a one phase capable resource with existing two phase
More...

All times above are in ranch (not your local) time.
The current ranch time is
Mar 29, 2024 04:20:33.