db-derby-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mamta Satoor" <msat...@gmail.com>
Subject Re: Problem with create table in Derby 10.2.2.0
Date Fri, 09 Feb 2007 18:47:09 GMT
BTW, the 10.2 Reference manual talks more about BIGINT at
http://db.apache.org/derby/docs/10.2/ref/rrefbuiltbigint.html

Mamta


On 2/9/07, Mamta Satoor <msatoor@gmail.com> wrote:
>
> Leo,
>
> You need to use BIGINT rather than long for KEY_ID column.
>
> Mamta
>
>
>  On 2/9/07, Leo Alberto <Alberto.Leo@ssi.it> wrote:
> >
> >  Hy
> > I'm try to using Derby 10.2.2.0<http://db.apache.org/derby/releases/release-10.2.2.0.cgi>
in
> > embedded mode with the integrated plug-in environment in Eclipse 3.2.0.
> > Environment jre 1.6.0
> > I would create a table with this code :
> >
> > *public* *boolean* tableCreation(Connection currentConn, String Table)
> >
> >                     *throws* DatabaseDriverException {
> >
> > *boolean* doCreateTable = *true*;
> >
> >              Statement stmt = *null*;
> >
> >              String createString = "create table " +
> >
> > Table +
> >
> > "(SAMPLE_ID int not null generate always as increment, " +
> >
> > "KEY_ID long, " +
> >
> > "KEY_INST_COUNT int, " +
> >
> > "DATAOBJ blob (102400), " +
> >
> >              "unique(KEY_ID))";
> >
> >
> >
> >              *try* {
> >
> >
> >
> >                     currentConn.setAutoCommit (*false*);
> >
> >                     stmt = currentConn.createStatement();
> >
> >                     DatabaseMetaData md = currentConn.getMetaData();
> >
> >                     ResultSet rs = md.getTables(*null*, *null*, "%", *
> > null*);
> >
> >                     *while* (rs.next()) {
> >
> > System.*out* .println("Elenco tabelle nel db " + rs.getString(3));
> >
> >                            *if* (rs.getString(3).equals(tabella)) {
> >
> >                                   doCreateTable = *false*;
> >
> >                                   *break*;
> >
> >                            }
> >
> >                     }
> >
> >                     *if* (doCreateTable) {
> >
> >                            // execute
> >
> >                            stmt. execute(createString); // *I'm arriving
> > here ang got the error*
> >
> >                            doCreateTable = *true*;
> >
> >                     }
> >
> >                     currentConn.commit();
> >
> >                     stmt.close();
> >
> >
> >
> >              } *catch* (SQLException e) {
> >
> >                     *throw* *new* DatabaseDriverException("Error create
> > table", e);
> >
> >              }
> >
> >              *return* doCreateTable;
> >
> >        }/* End tableCreation */
> > the error is:
> >
> > Syntax error: Encountered "," at line 1, column 88.
> >
> >        at
> > org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
> > Source)
> >
> >        at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown
> > Source)
> >
> >        at
> > org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown
> > Source)
> >
> >        at
> > org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown
> > Source)
> >
> >        at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown
> > Source)
> >
> >        at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown
> > Source)
> >
> >        at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown
> > Source)Error create table
> >
> >
> >
> >        at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown
> > Source)
> >
> >        at dds.dbdrivers.DerbyDriver.tableCreation(* DerbyDriver.java:257
> > *)
> >
> >        at provaDB.main(*provaDB.java:39 *)
> >
> > Caused by: *java.sql.SQLException* : Syntax error: Encountered "," at
> > line 1, column 88.
> >
> >        at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
> > Source)
> >
> >        at
> > org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
> > Source)
> >
> >        ... 10 more
> >
> > from errorlog.txt generated:
> >
> > ----------------------------------------------------------------
> >
> > 2007-02-09 17:31:01.452 GMT:
> >
> >  Booting Derby version The Apache Software Foundation - Apache Derby -
> > 10.2.2.0 - (485682): instance c013800d-0110-a78e-d8b1-ffffa2db3c51
> >
> > on database directory C:\DdsAppDb\DbDOMAIN_(7)
> >
> >
> >
> > Database Class Loader started - derby.database.classpath=''
> >
> > 2007-02-09 17:31:10.786 GMT Thread[main,5,main] (XID = 122), (SESSIONID
> > = 0), (DATABASE = DbDOMAIN_(7)), (DRDAID = null), Cleanup action starting
> >
> > 2007-02-09 17:31:10.786 GMT Thread[main,5,main] (XID = 122), (SESSIONID
> > = 0), (DATABASE = DbDOMAIN_(7)), (DRDAID = null), Failed Statement is:
> >
> >
> >
> > <my add>
> >
> >
> > 1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678
> >
> > create table POSITION (SAMPLE_ID int not null generated always as
> > identity, KEY_ID long, KEY_INST_COUNT int, DATAOBJ blob (102400),
> > unique(KEY_ID))
> >
> > ERROR 42X01: Syntax error: Encountered "," at line 1, column 88.
> >
> >        at org.apache.derby.iapi.error.StandardException.newException(Unknown
> > Source)
> >
> >        at org.apache.derby.impl.sql.compile.ParserImpl.parseStatement(Unknown
> > Source)
> >
> >        at org.apache.derby.impl.sql.GenericStatement.prepMinion(Unknown
> > Source)
> >
> >        at org.apache.derby.impl.sql.GenericStatement.prepare(Unknown
> > Source)
> >
> >        at
> > org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(Unknown
> > Source)
> >
> >        at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown
> > Source)
> >
> >        at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown
> > Source)
> >
> >        at dds.dbdrivers.DerbyDriver.tableCreation(DerbyDriver.java:257)
> >
> >        at provaDB.main(provaDB.java:39)
> >
> > Cleanup action completed
> >
> >
> >
> > I would be very glad if someone can help me understand wath is wrong!
> >
> > thanks in advance
> >
> > Alberto Leo
> >
> >
>
>

Mime
View raw message