Java 无法从oracle 11g数据库中读取表

Java 无法从oracle 11g数据库中读取表,java,sql,oracle,jdbc,Java,Sql,Oracle,Jdbc,这是我的代码: import java.sql.*; public class NewClass { public static void main(String[] args) { try{ Class.forName("oracle.jdbc.driver.OracleDriver"); Connection con=DriverManager.getConnection("jdbc:oracle:thin:@//1

这是我的代码:

import java.sql.*;

public class NewClass {
    public static void main(String[] args) {
       try{  
           Class.forName("oracle.jdbc.driver.OracleDriver");  
           Connection con=DriverManager.getConnection("jdbc:oracle:thin:@//127.0.0.1:1521/xe","system","apnair9902");  
           java.sql.Statement stmt = con.createStatement();  
           ResultSet rs=stmt.executeQuery("select * from INV_MASTER");  
           while(rs.next())  
                System.out.println(rs.getString(1)+"  "+rs.getString(2)+"  "+rs.getString(3));  
           con.close();
      }catch(Exception e){ System.out.println(e);}  
   }
}
`
我得到一个错误:

java.sql.SQLException: ORA-00942: table or view does not exist

我已从浏览器中创建并编辑了表,但程序找不到数据库。

您正在从不存在的表中进行选择,或者您正在以使此连接无法访问该表的方式连接到数据库

要创建表,请连接到数据库(以任何方式)并运行相应的SQL命令。它类似于

CREATE TABLE INV_MASTER (
  ... column stuff ...
  ) ... optional stuff ...;
当然,您需要知道如何填写适合您特定需要的列和选项

如果表已经在那里,那么您连接到了错误的数据库,使用了错误的用户(这将使您进入错误的模式或数据库“区域”),或者处理数据库设置的人还没有设置数据库


此外,请仔细检查您想要的表是否真的被称为INV_MASTER,并且您不需要在其前面加上架构。

为什么要作为系统连接?您查询的表看起来不像标准系统表。您可能应该连接到拥有该表的架构(或者至少是对其具有select权限的架构)。系统是我用来登录的管理员。该表已创建,其中包含内容,我可以自己查看。我唯一的麻烦似乎是找回它。我正在使用oracle 11g数据库,这迫使我在创建表、图表等之前创建一个工作区。我不理解这个概念。如果我试图通过直接登录到我的工作区ID进行连接,它将无法识别工作区。我很抱歉,如果你不明白我是一个新手,不知道如何在jdbc或这个网站上工作。但感谢您的帮助系统是标准的Oracle用户。通常,您可以使用它创建一个或多个用户(每个用户都有一个关联的模式),然后登录到这些用户以创建应用程序对象。创建工作区时,Apex也可以为您做到这一点。您不能使用工作区ID登录,这是Apex内部的事情。那么我如何将表从工作区获取到我的程序?我已经创建了数据库,正如我在上面的评论中所述,我不想浪费时间在程序中制作表格,因为它至少包含150多个项目。该表已在工作区中创建,我可以在登录到系统配置文件后访问该工作区。如果你能研究一下Oracle11g数据库的结构,那就太好了。对不起,这个问题不好,我对jdbc和堆栈溢出非常陌生。如果你需要更多的截图或信息,我很乐意上传如果你不想浪费时间制作表格,你打算如何阅读?如果你知道它已经在那里,那么你是在错误的地点检查。不需要更多的信息,您需要努力找出哪些问题存在,哪些问题不存在。