Hello
I have tested torque-3.0-dev with Interbase 6.01 Open source edition
and Interserver 2.00 with the following results:
- creation of the database fails because Interbase
cant't execute a "create database..." statement
with a prepared statement.
Maybe a dynamic statement would work.
Temporary solution: Create the database manually with isql or
IBConsole.
- The "TABLE_NAME" column in ID_TABLE creates a unique constraint which
is too long for Interbase.
->key size too big for index RDB$2
- "TABLE_NAME" with size="250" is fine.
- when creating tables Interbase does not recognize the columns
(without double quotes) within table constraints when they
are defined with double quotes before.
Failing sample:
CREATE TABLE ID_TABLE ( "ID_TABLE_ID" INTEGER NOT NULL, "TABLE_NAME"
VARCHAR (250) NOT NULL, "NEXT_ID" INTEGER, "QUANTITY" INTEGER, PRIMARY
KEY(ID_TABLE_ID), UNIQUE (TABLE_NAME))
Correct sample:
CREATE TABLE ID_TABLE ( ID_TABLE_ID INTEGER NOT NULL, TABLE_NAME
VARCHAR (250) NOT NULL, NEXT_ID INTEGER, QUANTITY INTEGER, PRIMARY
KEY(ID_TABLE_ID), UNIQUE (TABLE_NAME))
Solution: either the columns must allways be surrounded by double
quotes or newer.
- because Interbase has real (RI) Referential Integrity one cannot
set a foreign key to a table that does not already exist.
Solution: define the author table before the book table
in bookstore-schema.xml
remark: dropping of tables should occur in reverse order for the same
reason.
- TorqueRunner.java:
---------
BUILD FAILED
C:\project\torque\jakarta-turbine-torque\build-test.xml:289:
java.lang.NoClassDefFoundError: sun/io/ByteToCharConverter
---------
Someone calls sun/io/ByteToCharConverter which I don't have. I use
"JDK1.3.1_02-b02".
I think it would be better not to use sun.* packages because of
platform independency.
- XML:
Unfortunately the interclient driver has a limitation:
project-jdbc:
[echo] +-----------------------------------------------+
[echo] | |
[echo] | Generating XML from JDBC connection ! |
[echo] | Woo hoo! |
[echo] | |
[echo] +-----------------------------------------------+
[echo] taking build.properties from: build.properties
[torque-jdbc] Torque - JDBCToXMLSchema starting
[torque-jdbc]
[torque-jdbc] Your DB settings are:
[torque-jdbc] driver : interbase.interclient.Driver
[torque-jdbc] URL : jdbc:interbase://localhost//bookstore
[torque-jdbc] user : SYSDBA
[torque-jdbc] password : masterkey
[torque-jdbc] schema : ${databaseSchema}
[torque-jdbc] DB driver sucessfuly instantiated
[torque-jdbc] DB connection established
[torque-jdbc] Getting table list...
[torque-jdbc] interbase.interclient.DriverNotCapableException:
[interclient] Unsupported feature: InterBase does not support schemas.
[torque-jdbc] See API reference for exception
interbase.interclient.DriverNotCapableException
[torque-jdbc] interbase.interclient.DriverNotCapableException:
[interclient] Unsupported feature: InterBase does not support schemas.
[torque-jdbc] See API reference for exception
interbase.interclient.DriverNotCapableException
[torque-jdbc] at
interbase.interclient.DatabaseMetaData.systemTableQueryPreamble(Unknown
Source)
[torque-jdbc] at
interbase.interclient.DatabaseMetaData.getTables(Unknown Source)
[torque-jdbc] at
org.apache.torque.task.TorqueJDBCTransformTask.getTableNames(TorqueJDBCTransformTask.java:400)
[torque-jdbc] at
org.apache.torque.task.TorqueJDBCTransformTask.generateXML(TorqueJDBCTransformTask.java:234)
[torque-jdbc] at
org.apache.torque.task.TorqueJDBCTransformTask.execute(TorqueJDBCTransformTask.java:197)
[torque-jdbc] at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:104)
[torque-jdbc] at org.apache.tools.ant.Task.perform(Task.java:217)
[torque-jdbc] at org.apache.tools.ant.Target.execute(Target.java:184)
[torque-jdbc] at
org.apache.tools.ant.Target.performTasks(Target.java:202)
[torque-jdbc] at
org.apache.tools.ant.Project.executeTarget(Project.java:601)
[torque-jdbc] at
org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:266)
[torque-jdbc] at org.apache.tools.ant.Task.perform(Task.java:217)
[torque-jdbc] at org.apache.tools.ant.Target.execute(Target.java:184)
[torque-jdbc] at
org.apache.tools.ant.Target.performTasks(Target.java:202)
[torque-jdbc] at
org.apache.tools.ant.Project.executeTarget(Project.java:601)
[torque-jdbc] at
org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:266)
[torque-jdbc] at
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:120)
[torque-jdbc] at org.apache.tools.ant.Task.perform(Task.java:217)
[torque-jdbc] at org.apache.tools.ant.Target.execute(Target.java:184)
[torque-jdbc] at
org.apache.tools.ant.Target.performTasks(Target.java:202)
[torque-jdbc] at
org.apache.tools.ant.Project.executeTarget(Project.java:601)
[torque-jdbc] at
org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:266)
[torque-jdbc] at
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:120)
[torque-jdbc] at org.apache.tools.ant.Task.perform(Task.java:217)
[torque-jdbc] at org.apache.tools.ant.Target.execute(Target.java:184)
[torque-jdbc] at
org.apache.tools.ant.Target.performTasks(Target.java:202)
[torque-jdbc] at
org.apache.tools.ant.Project.executeTarget(Project.java:601)
[torque-jdbc] at
org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:266)
[torque-jdbc] at org.apache.tools.ant.Task.perform(Task.java:217)
[torque-jdbc] at org.apache.tools.ant.Target.execute(Target.java:184)
[torque-jdbc] at
org.apache.tools.ant.Target.performTasks(Target.java:202)
[torque-jdbc] at
org.apache.tools.ant.Project.executeTarget(Project.java:601)
[torque-jdbc] at
org.apache.tools.ant.Project.executeTargets(Project.java:560)
[torque-jdbc] at org.apache.tools.ant.Main.runBuild(Main.java:454)
[torque-jdbc] at org.apache.tools.ant.Main.start(Main.java:153)
[torque-jdbc] at org.apache.tools.ant.Main.main(Main.java:176)
[torque-jdbc]
[torque-jdbc] Torque - JDBCToXMLSchema finished
BUILD SUCCESSFUL
With these changes Interbase works fine.
If someone is interested in the *.vm templates I would
like to contribute.
That's all.
Regards,
Silvio Godenzi
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>