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

时间:2014-09-14 10:16:35

标签: 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:@//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

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

1 个答案:

答案 0 :(得分:1)

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

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

CREATE TABLE INV_MASTER (
  ... column stuff ...
  ) ... optional stuff ...;

当然,您需要知道要填写适合您特定需求的列和选项的内容。

如果该表已经存在,那么您将连接到错误的数据库,使用错误的用户(这将使您处于错误的SCHEMA或数据库“区域”)或正在处理设置的人数据库尚未设置数据库。

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