java.sql.SQLException: ORA-00911: invalid character

JIRA | Ian Brandt | 5 years ago
  1. 0

    CORE-683 states that properties from liquibase.properties can be used in change logs via {{${parameter.{_}property{_}}}}. This does not appear to work when setting a {{<propertyFile/>}} in the Maven plugin configuration: {noformat} [INFO] --- liquibase-maven-plugin:2.0.1:update (system) @ db --- [INFO] ------------------------------------------------------------------------ [INFO] Parsing Liquibase Properties File [INFO] File: db.properties [INFO] 'db.tablespace.data' in properties file is not being used by this task. [INFO] 'db.host' in properties file is not being used by this task. [INFO] 'db.data.path' in properties file is not being used by this task. [INFO] 'db.url' in properties file is not being used by this task. [INFO] 'db.driver' in properties file is not being used by this task. [INFO] 'db.port' in properties file is not being used by this task. [INFO] 'db.system.username' in properties file is not being used by this task. [INFO] 'db.username' in properties file is not being used by this task. [INFO] 'db.tablespace.temp' in properties file is not being used by this task. [INFO] 'db.tablespace.path' in properties file is not being used by this task. [INFO] 'db.connect.as.user' in properties file is not being used by this task. [INFO] 'db.system.password' in properties file is not being used by this task. [INFO] 'db.database' in properties file is not being used by this task. [INFO] 'db.password' in properties file is not being used by this task. [INFO] 'db.base.path' in properties file is not being used by this task. [INFO] ------------------------------------------------------------------------ [INFO] Executing on Database: jdbc:oracle:thin:@localhost:1521:ORCL INFO 8/26/11 10:55 AM:liquibase: Successfully acquired change log lock INFO 8/26/11 10:55 AM:liquibase: Reading from DATABASECHANGELOG INFO 8/26/11 10:55 AM:liquibase: Reading from DATABASECHANGELOG SEVERE 8/26/11 10:55 AM:liquibase: Error executing SQL create temporary tablespace "${db.tablespace.temp}" tempfile '${db.tablespace.path}/${db.tablespace.temp}01' size 100M reuse autoextend on next 100M maxsize ${db.tablespace.temp.maxsize} extent management local java.sql.SQLException: ORA-00911: invalid character at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395) at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802) at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436) at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186) at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:521) at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:194) at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1000) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1307) at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1882) at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:1847) at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:301) at liquibase.executor.jvm.JdbcExecutor$1ExecuteStatementCallback.doInStatement(JdbcExecutor.java:92) at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:55) at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:105) at liquibase.database.AbstractDatabase.execute(AbstractDatabase.java:1014) at liquibase.database.AbstractDatabase.executeStatements(AbstractDatabase.java:998) at liquibase.changelog.ChangeSet.execute(ChangeSet.java:317) at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:27) at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:58) at liquibase.Liquibase.update(Liquibase.java:113) at org.liquibase.maven.plugins.LiquibaseUpdate.doUpdate(LiquibaseUpdate.java:31) at org.liquibase.maven.plugins.AbstractLiquibaseUpdateMojo.performLiquibaseTask(AbstractLiquibaseUpdateMojo.java:24) at org.liquibase.maven.plugins.AbstractLiquibaseMojo.execute(AbstractLiquibaseMojo.java:302) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 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.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) {noformat} As a workaround I was able to use the [Properties Maven Plugin|http://mojo.codehaus.org/properties-maven-plugin/] to read the same properties file in as Maven project properties: {code:xml} <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>properties-maven-plugin</artifactId> <version>1.0-alpha-2</version> <executions> <execution> <phase>initialize</phase> <goals> <goal>read-project-properties</goal> </goals> <configuration> <files> <file>src/main/resources/db.properties</file> </files> </configuration> </execution> </executions> </plugin> {code} ...and then echo the required ones to the Maven LiquiBase Plugin: {code:xml} <configuration> <changeLogFile>system-changelog.xml</changeLogFile> <username>${db.system.username}</username> <password>${db.system.password}</password> <driver>${db.driver}</driver> <url>${db.url}</url> <expressionVars> <property> <name>db.username</name> <value>${db.username}</value> </property> <property> <name>db.tablespace.path</name> <value>${db.tablespace.path}</value> </property> <property> <name>db.tablespace.data</name> <value>${db.tablespace.data}</value> </property> <property> <name>db.tablespace.temp</name> <value>${db.tablespace.temp}</value> </property> <property> <name>db.tablespace.temp.maxsize</name> <value>${db.tablespace.temp.maxsize}</value> </property> </expressionVars> </configuration> {code} I do however like that I then don't have to prepend the parameters with "{{parameter.}}" in the change log.

    JIRA | 5 years ago | Ian Brandt
    java.sql.SQLException: ORA-00911: invalid character
  2. 0

    CORE-683 states that properties from liquibase.properties can be used in change logs via {{${parameter.{_}property{_}}}}. This does not appear to work when setting a {{<propertyFile/>}} in the Maven plugin configuration: {noformat} [INFO] --- liquibase-maven-plugin:2.0.1:update (system) @ db --- [INFO] ------------------------------------------------------------------------ [INFO] Parsing Liquibase Properties File [INFO] File: db.properties [INFO] 'db.tablespace.data' in properties file is not being used by this task. [INFO] 'db.host' in properties file is not being used by this task. [INFO] 'db.data.path' in properties file is not being used by this task. [INFO] 'db.url' in properties file is not being used by this task. [INFO] 'db.driver' in properties file is not being used by this task. [INFO] 'db.port' in properties file is not being used by this task. [INFO] 'db.system.username' in properties file is not being used by this task. [INFO] 'db.username' in properties file is not being used by this task. [INFO] 'db.tablespace.temp' in properties file is not being used by this task. [INFO] 'db.tablespace.path' in properties file is not being used by this task. [INFO] 'db.connect.as.user' in properties file is not being used by this task. [INFO] 'db.system.password' in properties file is not being used by this task. [INFO] 'db.database' in properties file is not being used by this task. [INFO] 'db.password' in properties file is not being used by this task. [INFO] 'db.base.path' in properties file is not being used by this task. [INFO] ------------------------------------------------------------------------ [INFO] Executing on Database: jdbc:oracle:thin:@localhost:1521:ORCL INFO 8/26/11 10:55 AM:liquibase: Successfully acquired change log lock INFO 8/26/11 10:55 AM:liquibase: Reading from DATABASECHANGELOG INFO 8/26/11 10:55 AM:liquibase: Reading from DATABASECHANGELOG SEVERE 8/26/11 10:55 AM:liquibase: Error executing SQL create temporary tablespace "${db.tablespace.temp}" tempfile '${db.tablespace.path}/${db.tablespace.temp}01' size 100M reuse autoextend on next 100M maxsize ${db.tablespace.temp.maxsize} extent management local java.sql.SQLException: ORA-00911: invalid character at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395) at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802) at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436) at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186) at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:521) at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:194) at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1000) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1307) at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1882) at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:1847) at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:301) at liquibase.executor.jvm.JdbcExecutor$1ExecuteStatementCallback.doInStatement(JdbcExecutor.java:92) at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:55) at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:105) at liquibase.database.AbstractDatabase.execute(AbstractDatabase.java:1014) at liquibase.database.AbstractDatabase.executeStatements(AbstractDatabase.java:998) at liquibase.changelog.ChangeSet.execute(ChangeSet.java:317) at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:27) at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:58) at liquibase.Liquibase.update(Liquibase.java:113) at org.liquibase.maven.plugins.LiquibaseUpdate.doUpdate(LiquibaseUpdate.java:31) at org.liquibase.maven.plugins.AbstractLiquibaseUpdateMojo.performLiquibaseTask(AbstractLiquibaseUpdateMojo.java:24) at org.liquibase.maven.plugins.AbstractLiquibaseMojo.execute(AbstractLiquibaseMojo.java:302) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 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.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) {noformat} As a workaround I was able to use the [Properties Maven Plugin|http://mojo.codehaus.org/properties-maven-plugin/] to read the same properties file in as Maven project properties: {code:xml} <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>properties-maven-plugin</artifactId> <version>1.0-alpha-2</version> <executions> <execution> <phase>initialize</phase> <goals> <goal>read-project-properties</goal> </goals> <configuration> <files> <file>src/main/resources/db.properties</file> </files> </configuration> </execution> </executions> </plugin> {code} ...and then echo the required ones to the Maven LiquiBase Plugin: {code:xml} <configuration> <changeLogFile>system-changelog.xml</changeLogFile> <username>${db.system.username}</username> <password>${db.system.password}</password> <driver>${db.driver}</driver> <url>${db.url}</url> <expressionVars> <property> <name>db.username</name> <value>${db.username}</value> </property> <property> <name>db.tablespace.path</name> <value>${db.tablespace.path}</value> </property> <property> <name>db.tablespace.data</name> <value>${db.tablespace.data}</value> </property> <property> <name>db.tablespace.temp</name> <value>${db.tablespace.temp}</value> </property> <property> <name>db.tablespace.temp.maxsize</name> <value>${db.tablespace.temp.maxsize}</value> </property> </expressionVars> </configuration> {code} I do however like that I then don't have to prepend the parameters with "{{parameter.}}" in the change log.

    JIRA | 5 years ago | Ian Brandt
    java.sql.SQLException: ORA-00911: invalid character
  3. 0

    How to translate SQL trigger to liquibase

    Stack Overflow | 1 year ago | user3139545
    liquibase.exception.DatabaseException: ORA-06550: line 5, column 15: PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following: ; [Failed SQL: begin if :new.myid is null then select seq_myseq.nextval into :new.myid from dual]
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Upgrade to 2.3.2 to 2.5.6 fails in Oracle

    GitHub | 2 years ago | joseorsini
    com.dotmarketing.exception.DotRuntimeException: ORA-02289: sequence does not exist
  6. 0

    Error loading fresh starter Oracle

    GitHub | 5 years ago | dotjorgeu
    java.sql.SQLException: ORA-00907: missing right parenthesis

    2 unregistered visitors
    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.sql.SQLException

      ORA-00911: invalid character

      at oracle.jdbc.driver.T4CTTIoer.processError()
    2. Oracle jdbc
      OracleStatementWrapper.execute
      1. oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
      2. oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395)
      3. oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802)
      4. oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
      5. oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
      6. oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:521)
      7. oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:194)
      8. oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1000)
      9. oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1307)
      10. oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1882)
      11. oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:1847)
      12. oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:301)
      12 frames
    3. Liquibase Core
      Liquibase.update
      1. liquibase.executor.jvm.JdbcExecutor$1ExecuteStatementCallback.doInStatement(JdbcExecutor.java:92)
      2. liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:55)
      3. liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:105)
      4. liquibase.database.AbstractDatabase.execute(AbstractDatabase.java:1014)
      5. liquibase.database.AbstractDatabase.executeStatements(AbstractDatabase.java:998)
      6. liquibase.changelog.ChangeSet.execute(ChangeSet.java:317)
      7. liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:27)
      8. liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:58)
      9. liquibase.Liquibase.update(Liquibase.java:113)
      9 frames
    4. org.liquibase.maven
      AbstractLiquibaseMojo.execute
      1. org.liquibase.maven.plugins.LiquibaseUpdate.doUpdate(LiquibaseUpdate.java:31)
      2. org.liquibase.maven.plugins.AbstractLiquibaseUpdateMojo.performLiquibaseTask(AbstractLiquibaseUpdateMojo.java:24)
      3. org.liquibase.maven.plugins.AbstractLiquibaseMojo.execute(AbstractLiquibaseMojo.java:302)
      3 frames
    5. Maven Plugin
      DefaultBuildPluginManager.executeMojo
      1. org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
      1 frame
    6. Maven Core
      DefaultMaven.execute
      1. org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
      2. org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
      3. org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
      4. org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
      5. org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
      6. org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
      7. org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
      8. org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
      9. org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
      9 frames
    7. M3 Interceptor
      MavenCli.main
      1. org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
      2. org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
      3. org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
      3 frames
    8. Java RT
      Method.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      4. java.lang.reflect.Method.invoke(Method.java:597)
      4 frames
    9. Plexus
      Launcher.main
      1. org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
      2. org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
      3. org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
      4. org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
      4 frames