commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alessandro Ferrucci" <alessandroferru...@gmail.com>
Subject Re: simple JDBC question
Date Mon, 03 Sep 2007 12:48:03 GMT
the auto-commit setter executes fine with no exceptions, even introspecting
the connection object through eclipse debugger shows me the auto-commit
attribute is set to false.

alessandro ferrucci :)

On 9/3/07, James Carman <james@carmanconsulting.com> wrote:
>
> You are essentially throwing away the exception from the driver if it
> can't set autocommit to false.  I'm pretty sure that the MySQL jdbc
> driver supports that, but you might want to print something in that
> catch statement to make sure.
>
> On 9/3/07, Alessandro Ferrucci <alessandroferrucci@gmail.com> wrote:
> > also I've been stepping through this code in the debugger and right
> after
> > the first execute statement I still should not see anything in the DB
> (not
> > until I do a commit).  But when I step through the first execute and I
> check
> > my DB I see the record has been written...I dont get that
> >
> > alessandro ferrucci
> >
> > On 9/3/07, Alessandro Ferrucci <alessandroferrucci@gmail.com> wrote:
> > >
> > > Yes I delete all data from it all the time.
> > >
> > > alessandro ferrucci
> > >
> > > On 9/3/07, ben short <jamin.short@gmail.com > wrote:
> > > >
> > > > Are you sure that the table is empty before you run the test?
> > > >
> > > > On 9/3/07, Alessandro Ferrucci < alessandroferrucci@gmail.com>
> wrote:
> > > > > Hi this question is related to DBCP, but I will provide a sample
> > > > without
> > > > > DBCP code since I see the same behavior either way.
> > > > >
> > > > > I have this very simple class:
> > > > >
> > > > > for some reaosn when I debug it in eclipse, and I step through the
> > > > first
> > > > > statement I see the record has already been inserted in teh DB
> when I
> > > > put
> > > > > autocommit to false...why is this?  Also what should happen in
> this
> > > > case is
> > > > > that the second statement is invalid so it throws an exception and
> the
> > > > > connection should rollback both statements but it is not...the
> first
> > > > > statement is obviously automatically commited...I cannot find out
> why
> > > > this
> > > > > is not working
> > > > >
> > > > > thx
> > > > >
> > > > > alessandro ferrucci :)
> > > > >
> > > > > import java.sql.Connection;
> > > > > import java.sql.DriverManager;
> > > > > import java.sql.SQLException;
> > > > > import java.sql.Statement;
> > > > >
> > > > > import org.junit.Test;
> > > > >
> > > > > //
> > > > >
> > > >
> ****************************************************************************
> > > >
> > > > >
> > > > > public class TestJDBC
> > > > > {
> > > > >     @Test
> > > > >     public void test()
> > > > >     {
> > > > >         Connection conn = null;
> > > > >         try
> > > > >         {
> > > > >             Class.forName ("com.mysql.jdbc.Driver");
> > > > >         }
> > > > >         catch (ClassNotFoundException ex)
> > > > >         {
> > > > >             System.out.println(ex.getMessage());
> > > > >         }
> > > > >         try
> > > > >         {
> > > > >             conn = DriverManager
> > > > >
> > > > >
> > > >
> .getConnection("jdbc:mysql://localhost:3306/photos?user=root&password=");
> > > > >             conn.setAutoCommit(false);
> > > > >         }
> > > > >         catch (SQLException ex)
> > > > >         {
> > > > >
> > > > >         }
> > > > >         Statement stmt = null;
> > > > >         try
> > > > >         {
> > > > >             stmt = conn.createStatement();
> > > > >         }
> > > > >         catch (Exception ex)
> > > > >         {
> > > > >             System.out.println(ex.getMessage());
> > > > >         }
> > > > >         try
> > > > >         {
> > > > >             stmt.execute("insert INTO photostest (id) VALUES
> (100)");
> > > > >             stmt = conn.createStatement();
> > > > >             stmt.execute("insert INTO photostest (id2) VALUES
> (200)");
> > > > >         }
> > > > >         catch (Exception ex)
> > > > >         {
> > > > >             System.out.println(ex.getMessage());
> > > > >             try
> > > > >             {
> > > > >                 conn.rollback();
> > > > >             }
> > > > >             catch (Exception e)
> > > > >             {
> > > > >                 System.out.println(ex.getMessage());
> > > > >             }
> > > > >         }
> > > > >     }
> > > > > }
> > > > >
> > > >
> > > >
> ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> > > > For additional commands, e-mail: user-help@commons.apache.org
> > > >
> > > >
> > >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message