用JDBC执行 ResultSet rs = stmt.executeQuery("select * from subject_lan;");总是报错:java.sql.SQLException: ORA-00911: 无效字符而我在PL/SQL Developer里执行 select * from subject_lan; 能够得到正确的结果这是怎么回事啊??

解决方案 »

  1.   

    select * from subject_lan;
    这句后面的分号是多余的,你去下试试。应该是分号是无效的字符
      

  2.   

    ResultSet rs = stmt.executeQuery("select * from subject_lan;") sql没写对
      

  3.   

    我试过了,去掉分号后,报错:java.sql.SQLException: ORA-00942: 表或视图不存在但是数据库里明明有这个表,因为我复制到PL/SQL Developer里执行是对的
      

  4.   

    JDBC 里不能用 ;,应为 ; 是一些工具软件用来控制事务所用的,而数据库并不认分号。
      

  5.   


    我确定是同个数据库,并且名字都没有问题我发现查询数据库中已有的表dual没有问题,但是查询自己的表就提示表或视图不存在,是不是权限问题啊?
      

  6.   

    ResultSet rs = stmt.executeQuery("select * from subject_lan");改成这样再试试