Win a copy of Learn Spring Security (video course) this week in the Spring forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Batch DB Updatation

 
Sam Furtado
Ranch Hand
Posts: 45
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Guys !!!
Below is a piece of code:
try{
con.setAutoCommit(false);
Statement stmt = con.createStatement();
while(stToken.hasMoreElements())
stmt.addBatch(stToken.nextToken());
int[] updateCounts = stmt.executeBatch();
con.commit();
catch(BatchUpdateException bueExcep){}
Here, batch updations take place dynamically through a user interface wherein the user casn specify the sql scripts to be fired. However, for instance if the first sql script is correct but the ones later on are incorrect then the entire transaction should be rolled back since the entire code is within "con.setAutoCommit(false);" and "con.commit();". Unfortunately, this does not occur and the first script does get executed successfully. What should be done to rectify it !!!
Pls suggest.
Thanks Guys
 
Jamie Robertson
Ranch Hand
Posts: 1879
MySQL Database Suse
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
This is behaviour is JDBC driver specific. I use Oracle thin drivers and they behave the same. It's all or nothing. The best you can do is validity checking of the fields before you add them to batch (unless you can find a different driver that behaves the way you want it to).
Jamie
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic