public class Test{ 
public static void main(String[] args){ 
ResultSet rs = null;
Statement sql=null;
Connection con = null; 
try{ //1.注册驱动 
String driverClassName= "oracle.jdbc.driver.OracleDriver"; 
Class.forName(driverClassName); 
//2.连接数据库 
String url = "jdbc:oracle:thin:127.0.0.1:1521:xian"; 
String userName="system"; 
String pwd="yixian"; 
con = DriverManager.getConnection(url,userName,pwd); 
System.out.println("con->"+con); 

sql=con.createStatement();
rs=sql.executeQuery("SELECT * FROM nomal.Reader");

System.out.println(rs.getString(1));

}
catch(Exception e){ e.printStackTrace(); }
finally{ //关闭连接
try{ if(con!=null) con.close(); }
catch(Exception ex){ ex.printStackTrace(); } } }}


提示找不到表!!!数据库里system 里有这张表啊!不知道为什么!请高手帮忙下!如果换用scott/tiger 会提示用户被锁!可是在sql是可以用的啊!还有就是配置oracle数据源!这里不是很懂啊!请高手知道下!谢谢!

解决方案 »

  1.   

    有个地方代码贴错了那个nomal.reader 改成reader 还是一样测错误!那是我贴代码不小心搞错了!
      

  2.   

    String url = "jdbc:oracle:thin:@127.0.0.1:1521:xian"; 
    你改成这样的看看
    少了一个@
    后面那个xian指的是版本号么?
      

  3.   

    另外给你一个建议
    Statement sql=null;//最好起名字为stat或者sta,sql一般用来指sql语句的
    Statement stat=null;
    String sql="select * from table_name";
    要不如果不注意的话,别人看你的代码容易理解错。
      

  4.   

    您好,很荣幸问您解答。
    看您的代码:
                String userName="system"; 
                String pwd="yixian"; 
                con = DriverManager.getConnection(url,userName,pwd); 
    您都这样写 userName="system";,system当然是连接数据的用户名啦,对于Oracle数据比较特殊啊,Oracle数据库在安装的时候配置要求比较高,如果您安装时的配置不正确,那么在使用Oracle数据库的时候也会出问题。对于您这种问题,您回忆一下,您在安装Oracle数据库时,有个”选择配置选项“界面,界面中有”创建数据库“的选项,然后之后”指定数据库配置选项“界面,其中有个让用户填写”全局数据库名“和”SID“,您当时在全局数据库名填写的是什么?然后看看对于您的代码:  rs=sql.executeQuery("SELECT * FROM nomal.Reader");,很明显是查询数据库xian中的表,但是您这个写的是”nomal.Reader“,我就很纳闷了,在SQL语句中的确可以使用xxx.xxx,但是据我所知,这是在对表起别名的情况下,使用<别名>.<字段>,但是在from 之后总是跟的表名。
    所以,我建议您这样解决:
    [1]首先,您肯定通过某个客户端来使用Oracle的,您仔细看看在登录Oracle时的数据库名,然后修改String url = "jdbc:oracle:thin:127.0.0.1:1521:xian"; 。
    [2]登录之后查看您登录的数据库中您要查询的表的名字,相应的修改 rs=sql.executeQuery("SELECT * FROM nomal.Reader");。
      

  5.   

      String url = "jdbc:oracle:thin:127.0.0.1:1521:xian"; 改成String url = "jdbc:oracle:thin:@127.0.0.1:1521:xian";