You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ddlutils-dev@db.apache.org by "Markus Böing (JIRA)" <ji...@apache.org> on 2009/01/27 13:53:00 UTC
[jira] Created: (DDLUTILS-238) java.sql.SQLException: ORA-01424
missing or illegal character following the escape character
java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
--------------------------------------------------------------------------------------------
Key: DDLUTILS-238
URL: https://issues.apache.org/jira/browse/DDLUTILS-238
Project: DdlUtils
Issue Type: Bug
Components: Core - Oracle
Affects Versions: 1.0
Environment: Client: win xp, Apache-ant-1.7.1, jdk 1.6.0, DdlUtils-1.0, ojdbc14.jar for oracle 10.2.0.4 | Server: Sun 15k, Solaris, Oracle 10.2.0.4
Reporter: Markus Böing
Assignee: Thomas Dudziak
The schema.xml was written completely and correctly but when it comes to extracting the data, this error occures:
java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
If you have a where clause with the like operator and use the ESCAPE expression for example like
>where owner LIKE 'SOME-OWNER-SUBSTRING' ESCAPE '/'<
the character after the escape character in SOME-OWNER-SUBSTRING _MUST_ be one of % or _ to evaluate % or _ literally.
I've tried different task-parameters like with/without modelname, usedelimitedsqlidentifiers true or without,only certain tabletypes but all with the same result.
This is my ant file:
<project name="MyProject" default="database-dump" basedir=".">
<description>
Oracle to DDL
</description>
<property name="database-dump" location="database-dump"/>
<path id="runtime-classpath">
<fileset dir="lib">
<include name="**/*.jar"/>
<include name="**/*.zip"/>
</fileset>
</path>
<target name="database-dump" description="Oracle10-SCHEMA-Dump">
<taskdef name="databaseToDdl"
classname="org.apache.ddlutils.task.DatabaseToDdlTask">
<classpath refid="runtime-classpath"/>
</taskdef>
<databaseToDdl modelname="SCHEMA" schemapattern="SCHEMA" databasetype="oracle10" verbosity="DEBUG">
<database url="jdbc:oracle:thin:@HOSTIP:1521:SID"
driverClassName="oracle.jdbc.driver.OracleDriver"
username="SCHEMA"
password="PASS"/>
<writeSchemaToFile outputFile="schema.xml"/>
<writeDataToFile outputFile="data.xml"/>
</databaseToDdl>
</target>
</project>
Thanks in advance
Markus
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (DDLUTILS-238) java.sql.SQLException: ORA-01424
missing or illegal character following the escape character
Posted by "Markus Böing (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DDLUTILS-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12668455#action_12668455 ]
Markus Böing commented on DDLUTILS-238:
---------------------------------------
Thanks for the reply.
At first, here is the console output related to the task's verbosity level "DEBUG" (running ant without -debug)
<stdout-task-verbosity>
D:\Apache-ant-1.7.1\bin>ant.bat -buildfile D:\Entwicklung\apache-ddlutils\DatabaseToDdl\Oracle\OracleDbToDdl.xml
Buildfile: D:\Entwicklung\apache-ddlutils\DatabaseToDdl\Oracle\OracleDbToDdl.xml
database-dump:
[databaseToDdl] Borrowed connection org.apache.commons.dbcp.PoolableConnection@1d80e6d from data source
[databaseToDdl] Returning connection org.apache.commons.dbcp.PoolableConnection@1d80e6d to data source.
[databaseToDdl] Remaining connections: None
[databaseToDdl] Written schema to D:\Entwicklung\apache-ddlutils\DatabaseToDdl\Oracle\kampdwh3-schema.xml
[databaseToDdl] Borrowed connection org.apache.commons.dbcp.PoolableConnection@1d80e6d from data source
[databaseToDdl] Returning connection org.apache.commons.dbcp.PoolableConnection@1d80e6d to data source.
[databaseToDdl] Remaining connections: None
BUILD FAILED
D:\Entwicklung\apache-ddlutils\DatabaseToDdl\Oracle\OracleDbToDdl.xml:25: java.sql.SQLException: ORA-01424: missing or illegal character following the
escape character
Total time: 2 minutes 41 seconds
D:\Apache-ant-1.7.1\bin>
</stdout-task-verbosity>
Obviously the schema file was written succesfully which I can confirm as the kampdwh3-schema.xml has all the metadata.
Here comes the stacktrace-part of the debug-output (running the project again with ant -debug). The whole debug output is in the attached file.
<log-stacktrace-part>
...
[databaseToDdl] Returning connection org.apache.commons.dbcp.PoolableConnection@11a64ed to data source.
[databaseToDdl] Remaining connections: None
Finding class org.apache.commons.lang.exception.ExceptionUtils
Loaded from D:\Entwicklung\apache-ddlutils\DatabaseToDdl\Oracle\lib\lib\commons-lang-2.1.jar org/apache/commons/lang/exception/ExceptionUtils.class
Class org.apache.commons.lang.exception.ExceptionUtils loaded from ant loader (parentFirst)
Class java.lang.NoSuchFieldException loaded from parent loader (parentFirst)
BUILD FAILED
D:\Entwicklung\apache-ddlutils\DatabaseToDdl\Oracle\OracleDbToDdl.xml:26: java.sql.SQLException: ORA-01424: missing or illegal character following the escape character
at org.apache.ddlutils.task.Command.handleException(Command.java:81)
at org.apache.ddlutils.task.WriteDataToFileCommand.execute(WriteDataToFileCommand.java:94)
at org.apache.ddlutils.task.DatabaseTaskBase.executeCommands(DatabaseTaskBase.java:337)
at org.apache.ddlutils.task.DatabaseTaskBase.execute(DatabaseTaskBase.java:365)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
at org.apache.tools.ant.Main.runBuild(Main.java:758)
at org.apache.tools.ant.Main.startAnt(Main.java:217)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Caused by: org.apache.ddlutils.DatabaseOperationException: java.sql.SQLException: ORA-01424: missing or illegal character following the escape character
at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1891)
at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1869)
at org.apache.ddlutils.io.DatabaseDataIO.writeDataToXML(DatabaseDataIO.java:359)
at org.apache.ddlutils.io.DatabaseDataIO.writeDataToXML(DatabaseDataIO.java:306)
at org.apache.ddlutils.task.WriteDataToFileCommand.execute(WriteDataToFileCommand.java:88)
... 19 more
Caused by: java.sql.SQLException: ORA-01424: missing or illegal character following the escape character
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:219)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:970)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1072)
at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:854)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1154)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3370)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3415)
at oracle.jdbc.driver.OracleDatabaseMetaData.getColumns(OracleDatabaseMetaData.java:273)
at org.apache.ddlutils.platform.DatabaseMetaDataWrapper.getColumns(DatabaseMetaDataWrapper.java:148)
at org.apache.ddlutils.platform.JdbcModelReader.readColumns(JdbcModelReader.java:747)
at org.apache.ddlutils.platform.JdbcModelReader.readTable(JdbcModelReader.java:565)
at org.apache.ddlutils.platform.oracle.Oracle8ModelReader.readTable(Oracle8ModelReader.java:102)
at org.apache.ddlutils.platform.oracle.Oracle10ModelReader.readTable(Oracle10ModelReader.java:80)
at org.apache.ddlutils.platform.JdbcModelReader.readTables(JdbcModelReader.java:516)
at org.apache.ddlutils.platform.JdbcModelReader.getDatabase(JdbcModelReader.java:472)
at org.apache.ddlutils.platform.JdbcModelReader.getDatabase(JdbcModelReader.java:432)
at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1884)
... 23 more
--- Nested Exception ---
org.apache.ddlutils.DatabaseOperationException: java.sql.SQLException: ORA-01424: missing or illegal character following the escape character
at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1891)
at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1869)
at org.apache.ddlutils.io.DatabaseDataIO.writeDataToXML(DatabaseDataIO.java:359)
at org.apache.ddlutils.io.DatabaseDataIO.writeDataToXML(DatabaseDataIO.java:306)
at org.apache.ddlutils.task.WriteDataToFileCommand.execute(WriteDataToFileCommand.java:88)
at org.apache.ddlutils.task.DatabaseTaskBase.executeCommands(DatabaseTaskBase.java:337)
at org.apache.ddlutils.task.DatabaseTaskBase.execute(DatabaseTaskBase.java:365)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
at org.apache.tools.ant.Main.runBuild(Main.java:758)
at org.apache.tools.ant.Main.startAnt(Main.java:217)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Caused by: java.sql.SQLException: ORA-01424: missing or illegal character following the escape character
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:219)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:970)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1072)
at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:854)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1154)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3370)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3415)
at oracle.jdbc.driver.OracleDatabaseMetaData.getColumns(OracleDatabaseMetaData.java:273)
at org.apache.ddlutils.platform.DatabaseMetaDataWrapper.getColumns(DatabaseMetaDataWrapper.java:148)
at org.apache.ddlutils.platform.JdbcModelReader.readColumns(JdbcModelReader.java:747)
at org.apache.ddlutils.platform.JdbcModelReader.readTable(JdbcModelReader.java:565)
at org.apache.ddlutils.platform.oracle.Oracle8ModelReader.readTable(Oracle8ModelReader.java:102)
at org.apache.ddlutils.platform.oracle.Oracle10ModelReader.readTable(Oracle10ModelReader.java:80)
at org.apache.ddlutils.platform.JdbcModelReader.readTables(JdbcModelReader.java:516)
at org.apache.ddlutils.platform.JdbcModelReader.getDatabase(JdbcModelReader.java:472)
at org.apache.ddlutils.platform.JdbcModelReader.getDatabase(JdbcModelReader.java:432)
at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1884)
... 23 more
Total time: 2 minutes 46 seconds
</log-stacktrace-part>
I don't know if got you right. Did you expect the relavant DDL/DML in the stacktrace? If not, how/where can I get it?
Any ideas?
Kind regards and thanks in advance
Markus
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> --------------------------------------------------------------------------------------------
>
> Key: DDLUTILS-238
> URL: https://issues.apache.org/jira/browse/DDLUTILS-238
> Project: DdlUtils
> Issue Type: Bug
> Components: Core - Oracle
> Affects Versions: 1.0
> Environment: Client: win xp, Apache-ant-1.7.1, jdk 1.6.0, DdlUtils-1.0, ojdbc14.jar for oracle 10.2.0.4 | Server: Sun 15k, Solaris, Oracle 10.2.0.4
> Reporter: Markus Böing
> Assignee: Thomas Dudziak
> Attachments: log.txt
>
>
> The schema.xml was written completely and correctly but when it comes to extracting the data, this error occures:
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> If you have a where clause with the like operator and use the ESCAPE expression for example like
> >where owner LIKE 'SOME-OWNER-SUBSTRING' ESCAPE '/'<
> the character after the escape character in SOME-OWNER-SUBSTRING _MUST_ be one of % or _ to evaluate % or _ literally.
> I've tried different task-parameters like with/without modelname, usedelimitedsqlidentifiers true or without,only certain tabletypes but all with the same result.
> This is my ant file:
> <project name="MyProject" default="database-dump" basedir=".">
> <description>
> Oracle to DDL
> </description>
> <property name="database-dump" location="database-dump"/>
> <path id="runtime-classpath">
> <fileset dir="lib">
> <include name="**/*.jar"/>
> <include name="**/*.zip"/>
> </fileset>
> </path>
> <target name="database-dump" description="Oracle10-SCHEMA-Dump">
> <taskdef name="databaseToDdl"
> classname="org.apache.ddlutils.task.DatabaseToDdlTask">
> <classpath refid="runtime-classpath"/>
> </taskdef>
> <databaseToDdl modelname="SCHEMA" schemapattern="SCHEMA" databasetype="oracle10" verbosity="DEBUG">
> <database url="jdbc:oracle:thin:@HOSTIP:1521:SID"
> driverClassName="oracle.jdbc.driver.OracleDriver"
> username="SCHEMA"
> password="PASS"/>
> <writeSchemaToFile outputFile="schema.xml"/>
> <writeDataToFile outputFile="data.xml"/>
> </databaseToDdl>
> </target>
> </project>
> Thanks in advance
> Markus
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (DDLUTILS-238) java.sql.SQLException: ORA-01424
missing or illegal character following the escape character
Posted by "Thomas Dudziak (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DDLUTILS-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12668614#action_12668614 ]
Thomas Dudziak commented on DDLUTILS-238:
-----------------------------------------
Mhmm this looks like an Oracle JDBC driver problem. You seem to be using a rather old driver judging by its filename (ojdbc14.jar). Could you try a more recent version - you can download it from here:
http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc_111060.html
It would also be interesting to see what the column name is that the driver complains about. Do you have any columns with names that have characters that are not simple numbers or ascii letters ?
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> --------------------------------------------------------------------------------------------
>
> Key: DDLUTILS-238
> URL: https://issues.apache.org/jira/browse/DDLUTILS-238
> Project: DdlUtils
> Issue Type: Bug
> Components: Core - Oracle
> Affects Versions: 1.0
> Environment: Client: win xp, Apache-ant-1.7.1, jdk 1.6.0, DdlUtils-1.0, ojdbc14.jar for oracle 10.2.0.4 | Server: Sun 15k, Solaris, Oracle 10.2.0.4
> Reporter: Markus Böing
> Assignee: Thomas Dudziak
> Attachments: log.txt
>
>
> The schema.xml was written completely and correctly but when it comes to extracting the data, this error occures:
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> If you have a where clause with the like operator and use the ESCAPE expression for example like
> >where owner LIKE 'SOME-OWNER-SUBSTRING' ESCAPE '/'<
> the character after the escape character in SOME-OWNER-SUBSTRING _MUST_ be one of % or _ to evaluate % or _ literally.
> I've tried different task-parameters like with/without modelname, usedelimitedsqlidentifiers true or without,only certain tabletypes but all with the same result.
> This is my ant file:
> <project name="MyProject" default="database-dump" basedir=".">
> <description>
> Oracle to DDL
> </description>
> <property name="database-dump" location="database-dump"/>
> <path id="runtime-classpath">
> <fileset dir="lib">
> <include name="**/*.jar"/>
> <include name="**/*.zip"/>
> </fileset>
> </path>
> <target name="database-dump" description="Oracle10-SCHEMA-Dump">
> <taskdef name="databaseToDdl"
> classname="org.apache.ddlutils.task.DatabaseToDdlTask">
> <classpath refid="runtime-classpath"/>
> </taskdef>
> <databaseToDdl modelname="SCHEMA" schemapattern="SCHEMA" databasetype="oracle10" verbosity="DEBUG">
> <database url="jdbc:oracle:thin:@HOSTIP:1521:SID"
> driverClassName="oracle.jdbc.driver.OracleDriver"
> username="SCHEMA"
> password="PASS"/>
> <writeSchemaToFile outputFile="schema.xml"/>
> <writeDataToFile outputFile="data.xml"/>
> </databaseToDdl>
> </target>
> </project>
> Thanks in advance
> Markus
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (DDLUTILS-238) java.sql.SQLException: ORA-01424
missing or illegal character following the escape character
Posted by "Markus Böing (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DDLUTILS-238?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Markus Böing updated DDLUTILS-238:
----------------------------------
Attachment: log.txt
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> --------------------------------------------------------------------------------------------
>
> Key: DDLUTILS-238
> URL: https://issues.apache.org/jira/browse/DDLUTILS-238
> Project: DdlUtils
> Issue Type: Bug
> Components: Core - Oracle
> Affects Versions: 1.0
> Environment: Client: win xp, Apache-ant-1.7.1, jdk 1.6.0, DdlUtils-1.0, ojdbc14.jar for oracle 10.2.0.4 | Server: Sun 15k, Solaris, Oracle 10.2.0.4
> Reporter: Markus Böing
> Assignee: Thomas Dudziak
> Attachments: log.txt
>
>
> The schema.xml was written completely and correctly but when it comes to extracting the data, this error occures:
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> If you have a where clause with the like operator and use the ESCAPE expression for example like
> >where owner LIKE 'SOME-OWNER-SUBSTRING' ESCAPE '/'<
> the character after the escape character in SOME-OWNER-SUBSTRING _MUST_ be one of % or _ to evaluate % or _ literally.
> I've tried different task-parameters like with/without modelname, usedelimitedsqlidentifiers true or without,only certain tabletypes but all with the same result.
> This is my ant file:
> <project name="MyProject" default="database-dump" basedir=".">
> <description>
> Oracle to DDL
> </description>
> <property name="database-dump" location="database-dump"/>
> <path id="runtime-classpath">
> <fileset dir="lib">
> <include name="**/*.jar"/>
> <include name="**/*.zip"/>
> </fileset>
> </path>
> <target name="database-dump" description="Oracle10-SCHEMA-Dump">
> <taskdef name="databaseToDdl"
> classname="org.apache.ddlutils.task.DatabaseToDdlTask">
> <classpath refid="runtime-classpath"/>
> </taskdef>
> <databaseToDdl modelname="SCHEMA" schemapattern="SCHEMA" databasetype="oracle10" verbosity="DEBUG">
> <database url="jdbc:oracle:thin:@HOSTIP:1521:SID"
> driverClassName="oracle.jdbc.driver.OracleDriver"
> username="SCHEMA"
> password="PASS"/>
> <writeSchemaToFile outputFile="schema.xml"/>
> <writeDataToFile outputFile="data.xml"/>
> </databaseToDdl>
> </target>
> </project>
> Thanks in advance
> Markus
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (DDLUTILS-238) java.sql.SQLException: ORA-01424
missing or illegal character following the escape character
Posted by "mohammed bhuiayan (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DDLUTILS-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12806458#action_12806458 ]
mohammed bhuiayan commented on DDLUTILS-238:
--------------------------------------------
Please is there any solution to this problem. i am having the same issue. Thank you!
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> --------------------------------------------------------------------------------------------
>
> Key: DDLUTILS-238
> URL: https://issues.apache.org/jira/browse/DDLUTILS-238
> Project: DdlUtils
> Issue Type: Bug
> Components: Core - Oracle
> Affects Versions: 1.0
> Environment: Client: win xp, Apache-ant-1.7.1, jdk 1.6.0, DdlUtils-1.0, ojdbc14.jar for oracle 10.2.0.4 | Server: Sun 15k, Solaris, Oracle 10.2.0.4
> Reporter: Markus Böing
> Assignee: Thomas Dudziak
> Attachments: log.txt
>
>
> The schema.xml was written completely and correctly but when it comes to extracting the data, this error occures:
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> If you have a where clause with the like operator and use the ESCAPE expression for example like
> >where owner LIKE 'SOME-OWNER-SUBSTRING' ESCAPE '/'<
> the character after the escape character in SOME-OWNER-SUBSTRING _MUST_ be one of % or _ to evaluate % or _ literally.
> I've tried different task-parameters like with/without modelname, usedelimitedsqlidentifiers true or without,only certain tabletypes but all with the same result.
> This is my ant file:
> <project name="MyProject" default="database-dump" basedir=".">
> <description>
> Oracle to DDL
> </description>
> <property name="database-dump" location="database-dump"/>
> <path id="runtime-classpath">
> <fileset dir="lib">
> <include name="**/*.jar"/>
> <include name="**/*.zip"/>
> </fileset>
> </path>
> <target name="database-dump" description="Oracle10-SCHEMA-Dump">
> <taskdef name="databaseToDdl"
> classname="org.apache.ddlutils.task.DatabaseToDdlTask">
> <classpath refid="runtime-classpath"/>
> </taskdef>
> <databaseToDdl modelname="SCHEMA" schemapattern="SCHEMA" databasetype="oracle10" verbosity="DEBUG">
> <database url="jdbc:oracle:thin:@HOSTIP:1521:SID"
> driverClassName="oracle.jdbc.driver.OracleDriver"
> username="SCHEMA"
> password="PASS"/>
> <writeSchemaToFile outputFile="schema.xml"/>
> <writeDataToFile outputFile="data.xml"/>
> </databaseToDdl>
> </target>
> </project>
> Thanks in advance
> Markus
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (DDLUTILS-238) java.sql.SQLException: ORA-01424
missing or illegal character following the escape character
Posted by "Markus Böing (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DDLUTILS-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12671819#action_12671819 ]
Markus Böing commented on DDLUTILS-238:
---------------------------------------
I took your advice and replaced the ojdbc14.jar by the ojdbc6.jar driver but that didn't change anything. Same error :-(
I'm pretty sure that there are no non-ascii characters in table- and columnnames.
To make sure that the error is not caused by any kind of unknown violation (characterset, locales, timeformats) I created a very simple test schema.
This is the output of writeSchemaToFile:
<?xml version="1.0"?>
<!DOCTYPE database SYSTEM "http://db.apache.org/torque/dtd/database">
<database name="unnamed">
<table name="BOOK">
<column name="ID" primaryKey="true" required="true" type="INTEGER" size="22" autoIncrement="false"/>
<column name="TITLE" primaryKey="false" required="false" type="VARCHAR" size="200" autoIncrement="false"/>
<column name="PUBID" primaryKey="false" required="false" type="INTEGER" size="22" autoIncrement="false"/>
<foreign-key foreignTable="PUBLISHER" name="FK_PUBID">
<reference local="PUBID" foreign="ID"/>
</foreign-key>
</table>
<table name="PUBLISHER">
<column name="ID" primaryKey="true" required="true" type="INTEGER" size="22" autoIncrement="false"/>
<column name="NAME" primaryKey="false" required="false" type="VARCHAR" size="500" autoIncrement="false"/>
<column name="CITY" primaryKey="false" required="false" type="VARCHAR" size="100" autoIncrement="false"/>
</table>
</database>
but the writeDataToFile failed again with the same error.
Each of the above tables has one single record:
BOOK.ID=1
BOOK.TITLE='Book1'
BOOK.PUBID=1
PUBLISHER.ID=1
PUBLISHER.NAME='Publisher1'
PUBLISHER.CITY='City1'
I don't know but it looks like as if I have reached the point where any further investigation exceeds a reasonable relation of effort and result.
Thanks for helping me.
Kind regards
Markus
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> --------------------------------------------------------------------------------------------
>
> Key: DDLUTILS-238
> URL: https://issues.apache.org/jira/browse/DDLUTILS-238
> Project: DdlUtils
> Issue Type: Bug
> Components: Core - Oracle
> Affects Versions: 1.0
> Environment: Client: win xp, Apache-ant-1.7.1, jdk 1.6.0, DdlUtils-1.0, ojdbc14.jar for oracle 10.2.0.4 | Server: Sun 15k, Solaris, Oracle 10.2.0.4
> Reporter: Markus Böing
> Assignee: Thomas Dudziak
> Attachments: log.txt
>
>
> The schema.xml was written completely and correctly but when it comes to extracting the data, this error occures:
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> If you have a where clause with the like operator and use the ESCAPE expression for example like
> >where owner LIKE 'SOME-OWNER-SUBSTRING' ESCAPE '/'<
> the character after the escape character in SOME-OWNER-SUBSTRING _MUST_ be one of % or _ to evaluate % or _ literally.
> I've tried different task-parameters like with/without modelname, usedelimitedsqlidentifiers true or without,only certain tabletypes but all with the same result.
> This is my ant file:
> <project name="MyProject" default="database-dump" basedir=".">
> <description>
> Oracle to DDL
> </description>
> <property name="database-dump" location="database-dump"/>
> <path id="runtime-classpath">
> <fileset dir="lib">
> <include name="**/*.jar"/>
> <include name="**/*.zip"/>
> </fileset>
> </path>
> <target name="database-dump" description="Oracle10-SCHEMA-Dump">
> <taskdef name="databaseToDdl"
> classname="org.apache.ddlutils.task.DatabaseToDdlTask">
> <classpath refid="runtime-classpath"/>
> </taskdef>
> <databaseToDdl modelname="SCHEMA" schemapattern="SCHEMA" databasetype="oracle10" verbosity="DEBUG">
> <database url="jdbc:oracle:thin:@HOSTIP:1521:SID"
> driverClassName="oracle.jdbc.driver.OracleDriver"
> username="SCHEMA"
> password="PASS"/>
> <writeSchemaToFile outputFile="schema.xml"/>
> <writeDataToFile outputFile="data.xml"/>
> </databaseToDdl>
> </target>
> </project>
> Thanks in advance
> Markus
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (DDLUTILS-238) java.sql.SQLException: ORA-01424
missing or illegal character following the escape character
Posted by "Tamas Ruff (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DDLUTILS-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12761227#action_12761227 ]
Tamas Ruff commented on DDLUTILS-238:
-------------------------------------
We have exactly the same problem. Is there any progress in solving this?
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> --------------------------------------------------------------------------------------------
>
> Key: DDLUTILS-238
> URL: https://issues.apache.org/jira/browse/DDLUTILS-238
> Project: DdlUtils
> Issue Type: Bug
> Components: Core - Oracle
> Affects Versions: 1.0
> Environment: Client: win xp, Apache-ant-1.7.1, jdk 1.6.0, DdlUtils-1.0, ojdbc14.jar for oracle 10.2.0.4 | Server: Sun 15k, Solaris, Oracle 10.2.0.4
> Reporter: Markus Böing
> Assignee: Thomas Dudziak
> Attachments: log.txt
>
>
> The schema.xml was written completely and correctly but when it comes to extracting the data, this error occures:
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> If you have a where clause with the like operator and use the ESCAPE expression for example like
> >where owner LIKE 'SOME-OWNER-SUBSTRING' ESCAPE '/'<
> the character after the escape character in SOME-OWNER-SUBSTRING _MUST_ be one of % or _ to evaluate % or _ literally.
> I've tried different task-parameters like with/without modelname, usedelimitedsqlidentifiers true or without,only certain tabletypes but all with the same result.
> This is my ant file:
> <project name="MyProject" default="database-dump" basedir=".">
> <description>
> Oracle to DDL
> </description>
> <property name="database-dump" location="database-dump"/>
> <path id="runtime-classpath">
> <fileset dir="lib">
> <include name="**/*.jar"/>
> <include name="**/*.zip"/>
> </fileset>
> </path>
> <target name="database-dump" description="Oracle10-SCHEMA-Dump">
> <taskdef name="databaseToDdl"
> classname="org.apache.ddlutils.task.DatabaseToDdlTask">
> <classpath refid="runtime-classpath"/>
> </taskdef>
> <databaseToDdl modelname="SCHEMA" schemapattern="SCHEMA" databasetype="oracle10" verbosity="DEBUG">
> <database url="jdbc:oracle:thin:@HOSTIP:1521:SID"
> driverClassName="oracle.jdbc.driver.OracleDriver"
> username="SCHEMA"
> password="PASS"/>
> <writeSchemaToFile outputFile="schema.xml"/>
> <writeDataToFile outputFile="data.xml"/>
> </databaseToDdl>
> </target>
> </project>
> Thanks in advance
> Markus
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (DDLUTILS-238) java.sql.SQLException: ORA-01424
missing or illegal character following the escape character
Posted by "Thomas Dudziak (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DDLUTILS-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12667979#action_12667979 ]
Thomas Dudziak commented on DDLUTILS-238:
-----------------------------------------
Did this error happen during writeSchemaToFile or writeDataToFile ? Please post the complete stacktrace (run ant with -debug if necessary).
If it happened during writeSchemaToFile, then please post the relevant DDL SQL for the table where the error happened. If during writeDataToFile, then please post the DML SQL for the row where it happened.
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> --------------------------------------------------------------------------------------------
>
> Key: DDLUTILS-238
> URL: https://issues.apache.org/jira/browse/DDLUTILS-238
> Project: DdlUtils
> Issue Type: Bug
> Components: Core - Oracle
> Affects Versions: 1.0
> Environment: Client: win xp, Apache-ant-1.7.1, jdk 1.6.0, DdlUtils-1.0, ojdbc14.jar for oracle 10.2.0.4 | Server: Sun 15k, Solaris, Oracle 10.2.0.4
> Reporter: Markus Böing
> Assignee: Thomas Dudziak
>
> The schema.xml was written completely and correctly but when it comes to extracting the data, this error occures:
> java.sql.SQLException: ORA-01424 missing or illegal character following the escape character
> If you have a where clause with the like operator and use the ESCAPE expression for example like
> >where owner LIKE 'SOME-OWNER-SUBSTRING' ESCAPE '/'<
> the character after the escape character in SOME-OWNER-SUBSTRING _MUST_ be one of % or _ to evaluate % or _ literally.
> I've tried different task-parameters like with/without modelname, usedelimitedsqlidentifiers true or without,only certain tabletypes but all with the same result.
> This is my ant file:
> <project name="MyProject" default="database-dump" basedir=".">
> <description>
> Oracle to DDL
> </description>
> <property name="database-dump" location="database-dump"/>
> <path id="runtime-classpath">
> <fileset dir="lib">
> <include name="**/*.jar"/>
> <include name="**/*.zip"/>
> </fileset>
> </path>
> <target name="database-dump" description="Oracle10-SCHEMA-Dump">
> <taskdef name="databaseToDdl"
> classname="org.apache.ddlutils.task.DatabaseToDdlTask">
> <classpath refid="runtime-classpath"/>
> </taskdef>
> <databaseToDdl modelname="SCHEMA" schemapattern="SCHEMA" databasetype="oracle10" verbosity="DEBUG">
> <database url="jdbc:oracle:thin:@HOSTIP:1521:SID"
> driverClassName="oracle.jdbc.driver.OracleDriver"
> username="SCHEMA"
> password="PASS"/>
> <writeSchemaToFile outputFile="schema.xml"/>
> <writeDataToFile outputFile="data.xml"/>
> </databaseToDdl>
> </target>
> </project>
> Thanks in advance
> Markus
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.