java.sql.SQLException: Invalid column type

Apereo Issues | Dan McCallum | 1 decade ago
  1. 0

    Several distinct problems: 1) Special characters in BIN table names can cause JdbcTypeMaskFilter to fail. For example: [java] BIN$15JrwlLPS1WHc/SebhTB/g==$0 [java] Error running dbLoader [java] org.springframework.dao.DataIntegrityViolationException: Loading table-column type mapping.; SQL []; ORA-01424: missing or illegal character following the escape character [java] ; nested exception is java.sql.SQLException: ORA-01424: missing or illegal character following the escape character [java] java.sql.SQLException: ORA-01424: missing or illegal character following the escape character [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) [java] at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289) [java] at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:579) [java] at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1894) [java] at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:1199) [java] at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2512) [java] at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2840) [java] at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:608) [java] at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:536) [java] at oracle.jdbc.OracleDatabaseMetaData.getColumns(OracleDatabaseMetaData.java:2571) [java] at org.jasig.portal.tools.dbloader.filters.JdbcTypeMaskFilter.<init>(JdbcTypeMaskFilter.java:60) [java] at org.jasig.portal.tools.dbloader.DbLoader.process(DbLoader.java:300) [java] at org.jasig.portal.tools.dbloader.DbLoaderRunner.main(DbLoaderRunner.java:32) 2) Not strictly a DbLoader issue, but GaP is violating its PK index on GAP_GROUP_MEMBER when it tries to insert an empty string into the MEMBER_SERVICE column. Actually, Ora translates the empty string to a null, thereby violating the constraint. Trace: [java] Exception in thread "main" java.lang.RuntimeException: java.sql.SQLException: ORA-01400: cannot insert NULL into ("UNI"."GAP_GROUP_MEMBER"."MEMBER_SERVICE") [java] at org.jasig.gap.db.DbUtils.jdbcExecuteStatement(DbUtils.java:98) [java] at org.jasig.gap.db.AbstractJdbcDao.primExecute(AbstractJdbcDao.java:74) [java] at org.jasig.gap.db.AbstractJdbcDao.insertValues(AbstractJdbcDao.java:58) [java] at org.jasig.gap.db.DbInit.initBackingStore(DbInit.java:138) [java] at org.jasig.gap.db.DbInit.initBackingStore(DbInit.java:121) [java] at org.jasig.gap.db.DbInit.main(DbInit.java:64) [java] Caused by: java.sql.SQLException: ORA-01400: cannot insert NULL into ("UNI"."GAP_GROUP_MEMBER"."MEMBER_SERVICE") [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) [java] at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289) [java] at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:579) [java] at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1894) [java] at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1094) [java] at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2132) [java] at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2015) [java] at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2877) [java] at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:858) [java] at org.apache.commons.dbcp.DelegatingStatement.executeUpdate(DelegatingStatement.java:225) [java] at org.jasig.gap.db.DbUtils.jdbcExecuteStatement(DbUtils.java:89) [java] ... 5 more 3) JdbcTypeMaskFilter constructor leaks ResultSets 4) Clob columns will not work reliably in Ora without special handling. For example: [java] UP_PORT_APPL_DEF_DISP_NM [java] Error executing SQL [INSERT INTO UP_PORT_APPL_DEF_DISP_NM (PORT_APPL_DEF_ID, KEY_LOCALE, LOCALE, DISP_NAME_TEXT) VALUES (?, ?, ?, ?)] with values [1, EN_US, EN_US, Test Web Applications] of type [12, 12, 12, 1111] [java] org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [INSERT INTO UP_PORT_APPL_DEF_DISP_NM (PORT_APPL_DEF_ID, KEY_LOCALE, LOCALE, DISP_NAME_TEXT) VALUES (?, ?, ?, ?)]; SQL state [null]; error code [17004]; Invalid column type; nested exception is java.sql.SQLException: Invalid column type [java] java.sql.SQLException: Invalid column type [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179) [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:269) [java] at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3088) [java] at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3107) [java] at org.apache.commons.dbcp.DelegatingPreparedStatement.setObject(DelegatingPreparedStatement.java:162) [java] at org.springframework.jdbc.core.StatementCreatorUtils.setParameterValue(StatementCreatorUtils.java:191) [java] at org.springframework.jdbc.core.JdbcTemplate$ArgTypePreparedStatementSetter.setValues(JdbcTemplate.java:1209) [java] at org.springframework.jdbc.core.JdbcTemplate$2.doInPreparedStatement(JdbcTemplate.java:697) [java] at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:477) [java] at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:693) [java] at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:752) [java] at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:756) [java] at org.jasig.portal.tools.dbloader.utils.DbUtils.executePreparedStatement(DbUtils.java:121) [java] at org.jasig.portal.tools.dbloader.handlers.DataHandler.endElement(DataHandler.java:126) [java] at org.apache.xml.serializer.ToXMLSAXHandler.endElement(ToXMLSAXHandler.java:261) [java] at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1399) [java] at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2411) [java] at org.apache.xalan.templates.ElemIf.execute(ElemIf.java:160) [java] at org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApplyTemplates.java:393) [java] at org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.java:176) [java] at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2411) [java] at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1374) [java] at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2411) [java] at org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(TransformerImpl.java:2281) [java] at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1367) [java] at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:709) [java] at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1284) [java] at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1262) [java] at org.jasig.portal.tools.dbloader.DbLoader.process(DbLoader.java:325) [java] at org.jasig.portal.tools.dbloader.DbLoaderRunner.main(DbLoaderRunner.java:32)

    Apereo Issues | 1 decade ago | Dan McCallum
    java.sql.SQLException: Invalid column type
  2. 0

    Several distinct problems: 1) Special characters in BIN table names can cause JdbcTypeMaskFilter to fail. For example: [java] BIN$15JrwlLPS1WHc/SebhTB/g==$0 [java] Error running dbLoader [java] org.springframework.dao.DataIntegrityViolationException: Loading table-column type mapping.; SQL []; ORA-01424: missing or illegal character following the escape character [java] ; nested exception is java.sql.SQLException: ORA-01424: missing or illegal character following the escape character [java] java.sql.SQLException: ORA-01424: missing or illegal character following the escape character [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) [java] at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289) [java] at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:579) [java] at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1894) [java] at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:1199) [java] at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2512) [java] at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2840) [java] at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:608) [java] at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:536) [java] at oracle.jdbc.OracleDatabaseMetaData.getColumns(OracleDatabaseMetaData.java:2571) [java] at org.jasig.portal.tools.dbloader.filters.JdbcTypeMaskFilter.<init>(JdbcTypeMaskFilter.java:60) [java] at org.jasig.portal.tools.dbloader.DbLoader.process(DbLoader.java:300) [java] at org.jasig.portal.tools.dbloader.DbLoaderRunner.main(DbLoaderRunner.java:32) 2) Not strictly a DbLoader issue, but GaP is violating its PK index on GAP_GROUP_MEMBER when it tries to insert an empty string into the MEMBER_SERVICE column. Actually, Ora translates the empty string to a null, thereby violating the constraint. Trace: [java] Exception in thread "main" java.lang.RuntimeException: java.sql.SQLException: ORA-01400: cannot insert NULL into ("UNI"."GAP_GROUP_MEMBER"."MEMBER_SERVICE") [java] at org.jasig.gap.db.DbUtils.jdbcExecuteStatement(DbUtils.java:98) [java] at org.jasig.gap.db.AbstractJdbcDao.primExecute(AbstractJdbcDao.java:74) [java] at org.jasig.gap.db.AbstractJdbcDao.insertValues(AbstractJdbcDao.java:58) [java] at org.jasig.gap.db.DbInit.initBackingStore(DbInit.java:138) [java] at org.jasig.gap.db.DbInit.initBackingStore(DbInit.java:121) [java] at org.jasig.gap.db.DbInit.main(DbInit.java:64) [java] Caused by: java.sql.SQLException: ORA-01400: cannot insert NULL into ("UNI"."GAP_GROUP_MEMBER"."MEMBER_SERVICE") [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) [java] at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289) [java] at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:579) [java] at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1894) [java] at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1094) [java] at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2132) [java] at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2015) [java] at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2877) [java] at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:858) [java] at org.apache.commons.dbcp.DelegatingStatement.executeUpdate(DelegatingStatement.java:225) [java] at org.jasig.gap.db.DbUtils.jdbcExecuteStatement(DbUtils.java:89) [java] ... 5 more 3) JdbcTypeMaskFilter constructor leaks ResultSets 4) Clob columns will not work reliably in Ora without special handling. For example: [java] UP_PORT_APPL_DEF_DISP_NM [java] Error executing SQL [INSERT INTO UP_PORT_APPL_DEF_DISP_NM (PORT_APPL_DEF_ID, KEY_LOCALE, LOCALE, DISP_NAME_TEXT) VALUES (?, ?, ?, ?)] with values [1, EN_US, EN_US, Test Web Applications] of type [12, 12, 12, 1111] [java] org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [INSERT INTO UP_PORT_APPL_DEF_DISP_NM (PORT_APPL_DEF_ID, KEY_LOCALE, LOCALE, DISP_NAME_TEXT) VALUES (?, ?, ?, ?)]; SQL state [null]; error code [17004]; Invalid column type; nested exception is java.sql.SQLException: Invalid column type [java] java.sql.SQLException: Invalid column type [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179) [java] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:269) [java] at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3088) [java] at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3107) [java] at org.apache.commons.dbcp.DelegatingPreparedStatement.setObject(DelegatingPreparedStatement.java:162) [java] at org.springframework.jdbc.core.StatementCreatorUtils.setParameterValue(StatementCreatorUtils.java:191) [java] at org.springframework.jdbc.core.JdbcTemplate$ArgTypePreparedStatementSetter.setValues(JdbcTemplate.java:1209) [java] at org.springframework.jdbc.core.JdbcTemplate$2.doInPreparedStatement(JdbcTemplate.java:697) [java] at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:477) [java] at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:693) [java] at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:752) [java] at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:756) [java] at org.jasig.portal.tools.dbloader.utils.DbUtils.executePreparedStatement(DbUtils.java:121) [java] at org.jasig.portal.tools.dbloader.handlers.DataHandler.endElement(DataHandler.java:126) [java] at org.apache.xml.serializer.ToXMLSAXHandler.endElement(ToXMLSAXHandler.java:261) [java] at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1399) [java] at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2411) [java] at org.apache.xalan.templates.ElemIf.execute(ElemIf.java:160) [java] at org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApplyTemplates.java:393) [java] at org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.java:176) [java] at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2411) [java] at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1374) [java] at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2411) [java] at org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(TransformerImpl.java:2281) [java] at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1367) [java] at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:709) [java] at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1284) [java] at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1262) [java] at org.jasig.portal.tools.dbloader.DbLoader.process(DbLoader.java:325) [java] at org.jasig.portal.tools.dbloader.DbLoaderRunner.main(DbLoaderRunner.java:32)

    Apereo Issues | 1 decade ago | Dan McCallum
    java.sql.SQLException: Invalid column type
  3. 0

    Help: Invalid column Type

    db-torque-user | 10 years ago | sumit grover
    java.sql.SQLException: Invalid column type
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Re: Help: Invalid column Type

    db-torque-user | 10 years ago | Alvaro Coronel
    java.sql.SQLException: Invalid column type
  6. 0

    RE: Help: Invalid column Type

    db-torque-user | 10 years ago | Declan Shanaghy
    java.sql.SQLException: Invalid column type

    26 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

      Invalid column type

      at oracle.jdbc.dbaccess.DBError.throwSqlException()
    2. oracle.jdbc.dbaccess
      DBError.throwSqlException
      1. oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
      2. oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
      3. oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:269)
      3 frames
    3. Oracle jdbc
      OraclePreparedStatement.setObject
      1. oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3088)
      2. oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3107)
      2 frames
    4. Commons DBCP
      DelegatingPreparedStatement.setObject
      1. org.apache.commons.dbcp.DelegatingPreparedStatement.setObject(DelegatingPreparedStatement.java:162)
      1 frame
    5. Spring Framework
      JdbcTemplate.update
      1. org.springframework.jdbc.core.StatementCreatorUtils.setParameterValue(StatementCreatorUtils.java:191)
      2. org.springframework.jdbc.core.JdbcTemplate$ArgTypePreparedStatementSetter.setValues(JdbcTemplate.java:1209)
      3. org.springframework.jdbc.core.JdbcTemplate$2.doInPreparedStatement(JdbcTemplate.java:697)
      4. org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:477)
      5. org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:693)
      6. org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:752)
      7. org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:756)
      7 frames
    6. org.jasig.portal
      DataHandler.endElement
      1. org.jasig.portal.tools.dbloader.utils.DbUtils.executePreparedStatement(DbUtils.java:121)
      2. org.jasig.portal.tools.dbloader.handlers.DataHandler.endElement(DataHandler.java:126)
      2 frames
    7. GWT dev
      ToXMLSAXHandler.endElement
      1. org.apache.xml.serializer.ToXMLSAXHandler.endElement(ToXMLSAXHandler.java:261)
      1 frame
    8. Xalan Java
      TransformerImpl.transform
      1. org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1399)
      2. org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2411)
      3. org.apache.xalan.templates.ElemIf.execute(ElemIf.java:160)
      4. org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApplyTemplates.java:393)
      5. org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.java:176)
      6. org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2411)
      7. org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1374)
      8. org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2411)
      9. org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(TransformerImpl.java:2281)
      10. org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1367)
      11. org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:709)
      12. org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1284)
      13. org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1262)
      13 frames
    9. org.jasig.portal
      DbLoaderRunner.main
      1. org.jasig.portal.tools.dbloader.DbLoader.process(DbLoader.java:325)
      2. org.jasig.portal.tools.dbloader.DbLoaderRunner.main(DbLoaderRunner.java:32)
      2 frames