|
I followed your exact steps and received the same error:
> crtlib cujotest
Library CUJOTEST created.
> qsh
javac TestJDBC10.java
$
java TestJDBC10
java.sql.SQLException: TEST in CUJOTEST not valid for operation.
com/ibm/db2/jdbc/app/DB2StatementRuntimeImpl.execDirect(ILjava/lang/String;I
I)I+12 (DB2StatementRuntimeImpl.java:90)
com/ibm/db2/jdbc/app/DB2Statement.genericDirectExecutor(Ljava/lang/String;I)
Z+147 (DB2Statement.java:754)
com/ibm/db2/jdbc/app/DB2Statement.executeUpdate(Ljava/lang/String;)I+31
(DB2Statement.java:789)
TestJDBC10.main([Ljava/lang/String;)V+28 (TestJDBC10.java:14)
$
Release info:
5769JC1 V4R2M0 AS/400 Toolbox for Java
5769JV1 V4R4M0 AS/400 Developer Kit for Java
5769JV1 V4R4M0 Java Developer Kit 1.1.7
It definitely seems that the driver is connecting (in error) as if I wanted
commitment control, and since the file is not journaled, I receive the
error.
I'm guessing this will go away once we install the latest cume tape, but I
had hoped someone had experienced this same problem before and could point
out a specific PTF to fix it.
John Caruso
----- Original Message -----
From: <cujo@us.ibm.com>
To: <JAVA400-L@midrange.com>
Sent: Friday, January 28, 2000 10:46 AM
Subject: Re: INSERT fails using JDBC native driver
> First, Native JDBC used to not allow the user to set the level to none,
> because the JDBC documentation says that none is a special value to
> represent the fact that transactions are not supported. In a v4r4 PTF
> along the way we changed to allow this to work anyway, because our
customer
> base understands the concept of TX level none in a different light.
Please
> note that I do believe that the Toolbox JDBC driver still will throw an
> exception on this line (but don't hold me to that).
>
> -------------------
>
> Now for the main issue. I don't believe you specified a release so I just
> tested it on my development box to see what would happen. Everything
> seemed to work just fine. What did you do that is different than these
> steps?
>
> 1) I created the library to use from the green screen:
>
> crtlib cujotest
> Library CUJOTEST created.
>
> 2) I modified your program just a little. I had a TestJDBC program
> already, and I qualified the TEST table references:
>
> import java.sql.*;
>
> public class TestJDBC10 {
>
> public static void main(java.lang.String[] args) throws Exception {
>
> Class.forName("com.ibm.db2.jdbc.app.DB2Driver");
> Connection c = DriverManager.getConnection("jdbc:db2:*local");
> // c.setTransactionIsolation(Connection.TRANSACTION_NONE);
> Statement s = c.createStatement();
>
> s.executeUpdate("CREATE TABLE CUJOTEST.TEST (ID INTEGER, DESC
> CHAR(50))");
>
> s.executeUpdate("INSERT INTO CUJOTEST.TEST VALUES (1, 'item 1')");
>
> s.close();
> c.close();
>
> }
> }
>
> 3) I ran the program from the green screen:
>
> java TestJDBC10
>
> 4) Through interactive SQL I typed this:
>
> select * from cujotest.test
>
> 5) This is the results:
>
> ID DESC
> 1 item 1
> ******** End of data ********
>
>
>
> Regards,
>
> Richard D. Dettinger
> AS/400 Java Data Access Team
>
> "TRUE! nervous, very, very dreadfully nervous I had been and am; but why
> WILL you say that I am mad?
> The disease had sharpened my senses, not destroyed, not dulled them. "
>
> - Edgar Allan Poe
> "The Tell-Tale Heart"
>
>
>
>
> "John Caruso" <JohnCaruso@email.com> on 01/28/2000 11:40:30 AM
>
> Please respond to JAVA400-L@midrange.com
>
> To: JAVA400-L@midrange.com
> cc:
> Subject: INSERT fails using JDBC native driver
>
>
>
>
> Can anyone tell me why the following code works when the table is created
> in
> an SQL collection, but not in a normal library? It fails on the INSERT.
> It
> appears that the native JDBC driver is using a transaction isolation level
> other than the default of NONE. I've tried specifically setting it to
NONE
> (see commented out code) only to receive this error:
>
> java.sql.SQLException: [IBM][JDBC Driver][12025] An incorrect transaction
> isolation level was specified.
>
> When I execute the SQL statement using interactive SQL or the Client
Access
> Express SQL scripting utility, I do not encounter any problems.
>
> Is there a PTF to fix this, or am I missing something?
>
> TIA,
>
> John Caruso
> ----
>
> import java.sql.*;
>
> public class TestJDBC {
>
> public static void main(java.lang.String[] args) throws Exception {
>
> Class.forName("com.ibm.db2.jdbc.app.DB2Driver");
> Connection c = DriverManager.getConnection("jdbc:db2:*local");
> // c.setTransactionIsolation(Connection.TRANSACTION_NONE);
> Statement s = c.createStatement();
>
> s.executeUpdate("CREATE TABLE TEST (ID INTEGER, DESC CHAR(50))");
>
> s.executeUpdate("INSERT INTO TEST VALUES (1, 'item 1')");
>
> s.close();
> c.close();
>
> }
> }
> ----
> Here is output when run with normal library:
>
> java.sql.SQLException: TEST in JCARUSO not valid for operation.
>
>
com/ibm/db2/jdbc/app/DB2StatementRuntimeImpl.execDirect(ILjava/lang/String;I
>
> I)I+12 (DB2StatementRuntimeImpl.java:90)
>
>
com/ibm/db2/jdbc/app/DB2Statement.genericDirectExecutor(Ljava/lang/String;I)
>
> Z+147 (DB2Statement.java:754)
>
> com/ibm/db2/jdbc/app/DB2Statement.executeUpdate(Ljava/lang/String;)I+31
> DB2Statement.java:789)
> TestJDBC.main([Ljava/lang/String;)V+28 (TestJDBC.java:13)
>
> +---
> | This is the JAVA/400 Mailing List!
> | To submit a new message, send your mail to JAVA400-L@midrange.com.
> | To subscribe to this list send email to JAVA400-L-SUB@midrange.com.
> | To unsubscribe from this list send email to
JAVA400-L-UNSUB@midrange.com.
> | Questions should be directed to the list owner: joe@zappie.net
> +---
+---
| This is the JAVA/400 Mailing List!
| To submit a new message, send your mail to JAVA400-L@midrange.com.
| To subscribe to this list send email to JAVA400-L-SUB@midrange.com.
| To unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner: joe@zappie.net
+---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.