java.sql.SQLException: 列名无效
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:269)
at oracle.jdbc.driver.OracleStatement.get_column_index(OracleStatement.java:5971)
at oracle.jdbc.driver.OracleResultSetImpl.findColumn(OracleResultSetImpl.java:1527)
at oracle.jdbc.driver.OracleResultSet.getString(OracleResultSet.java:1482)
at com.inventec.das.dao.ServicesDAO.addRecordsSet(ServicesDAO.java:213)
at com.inventec.das.dao.ServicesDAO.getAllXMLStrBySQL(ServicesDAO.java:147)
at com.inventec.das.services.Services.getAllXMLStrBySQL(Services.java:43)
at com.inventec.das.services.Services.main(Services.java:82)
com.inventec.das.exception.WebServicesException: Web services error:
Access database Error:列名无效
at com.inventec.das.dao.ServicesDAO.addRecordsSet(ServicesDAO.java:245)
at com.inventec.das.dao.ServicesDAO.getAllXMLStrBySQL(ServicesDAO.java:147)
at com.inventec.das.services.Services.getAllXMLStrBySQL(Services.java:43)
at com.inventec.das.services.Services.main(Services.java:82)

解决方案 »

  1.   

    "列名无效"
    仔细检查sql 语句,最好是输出sql 看看是否对错。
      

  2.   

    仔细检查你的sql语句 把sql语句打印出来 放到 sql/plus中执行一下看看是那里错了
      

  3.   

    select coloum 但是这个coloum在db里面根本不存在。
    看看是不是拼写错误引起的。
      

  4.   

    补充楼上:SQL语句的列名有误。
      

  5.   

    补充楼上:SQL语句的列名有误。
      

  6.   

    把你写的SQL语句贴出来看下啊 应该是语句出错了
      

  7.   

    我也遇到了,但不是语句有错,在pl/sql上可以运行,但是在程序中报错java.sql.SQLException: 列名无效
      

  8.   

    我的也是一样,在PL/SQL中运行中正常,而系统自己调用时就报错列名无效,不过我发现此时调用的SQLLDR命令报错“Oracle资源正忙,要求指定NOWAIT”,不知道有没有关系,我也没看明白,为何会资源正忙,这个错误连续出现了4天,每天都集中在15点到19点,后来就再也没有发生过了。
    求助……
      

  9.   

    我也出过这问题
    提示java.sql.SQLException: 列名无效
    但是打印出sql在toad里执行时没问题的
      

  10.   

    这个是在resultSet里边列名出错了   我出现过这样的情况
      

  11.   

    查询出来的列名和getString(rowname)使用的列名不一致也可以导致这个问题。