Thanks, Dan.
The document I read seems already the latest, which is Derby Developer's
Guide Version 10.3.
And I am still confused about the isolation mode, I traced the stored
procedure using getTransactionIsolation() and the return value shows the
isolation level was changed, I am not sure about the whether that data can
reflect the real isolation level.

On Feb 15, 2008 11:59 PM, Daniel John Debrunner <[EMAIL PROTECTED]> wrote:

> sin(EaTing), wrote:
>
> > *In order to preserve transactional atomicity, database-side JDBC
> > procedures that use
> > nested connections have the following limitations.
> > • Cannot issue a commit or rollback, unless called within a CALL
> statement.
> > • Cannot change connection attributes such as auto-commit.
> >
> > *
> > If these items are true for my stored procedure, then I cannot modify
> > the isolation level and neither change the autocommit mode.
>
> The autocommit mode cannot be changed, it is always false for
> server-side connections. Calling setAutoCommit(false) is allowed since
> it doesn't change the mode.
>
> Set isolation level I'm not sure about.
>
> > And I am yet confused about the first statement "*Cannot issue a commit
> > or rollback, unless called within a CALL statement."* Could a Derby
> > procedure be called without a "CALL statement"?
>
> Procedures are only supported in CALL statements. However server-side
> jdbc can also exist in functions which can be called from any expression.
>
> So the documentation you found is somewhat incorrect, it could be
> improved to use routines when describing functions and procedures, and
> just procedures when needed. E.g.
>
> In order to preserve transactional atomicity, database-side JDBC
> routines that use nested connections have the following limitations.
>  • Can only issue a commit or rollback within a procedure.
>  • Cannot change connection attribute auto-commit.
>
> Dan.
>
>

Reply via email to