aspose file tools*
The moose likes JDBC and the fly likes JDBC Transaction  Setting Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Databases » JDBC
Bookmark "JDBC Transaction  Setting" Watch "JDBC Transaction  Setting" New topic
Author

JDBC Transaction Setting

Gil Li
Greenhorn

Joined: May 27, 2004
Posts: 15
hello people..
I wrote a java code to know the transaction process. I clearly set the
AutoCommit into false. Then I forcibly disable the commit just for checking purpose.
But the database changes whenevewr the statement executes. I have given below the code.
It should not update the database .But it does.I dont know where I am missing the technical things..
Please Help me...



import java.sql.*;
import java.util.*;


public class tranc
{
public static void main(String a[])
{
try
{

Class.forName("org.gjt.mm.mysql.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/tech?user=root&password=");

con.setAutoCommit(false);


Statement st1=con.createStatement();
st1.executeUpdate("update topic_details set topic='ram' where tid=11");


Statement st2=con.createStatement();
st2.executeUpdate("update topic_details set topic='ram' where tid=9");




if(false)
{
con.commit();
System.out.println("success");
}else
System.out.println("fail");


} catch(Exception e){ e.printStackTrace();}



}
}


Regards,<br /> <br />GILLI
Julian Kennedy
Ranch Hand

Joined: Aug 02, 2004
Posts: 823
I think the technical thing you're missing in this case is that most versions of MySQL don't support transactions. If you want transactions, use a proper database. (or read up about how to get or enable transaction support in MySQL)

Jules
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
 
subject: JDBC Transaction Setting