selecl  userid from testTable  在testTable前加个访问数据库的合法用户的名试一试
select userid from scott.testTable (我想你知道scott的意思吧)

解决方案 »

  1.   

    我的源代码是:
    import java.sql.*;public class OracleTest {
    public static void main(String[] args) {
    try{
    Class.forName ("oracle.jdbc.driver.OracleDriver"); 
    Connection conn = 
       DriverManager.getConnection ("jdbc:oracle:thin:@host'IP:1521:dbtest","user", "pwd");
    Statement s=conn.createStatement();
    System.out.println("Ok!");
    String query="select userid as test from holdingtable";
    ResultSet r=s.executeQuery(query);
    String n;
    while(r.next()){
    System.out.println(r.getString("test"));
    System.out.println("while try 1");
    }
    }
    catch(Exception e)
    {
    e.printStackTrace();
    }
    }
    }
      

  2.   

    先判断一下结果集本身是否null?
    if(rs != null)
    {
       while(rs.next())
       {
           your code goes here.
       }
    }
      

  3.   

    楼上的:结果集是never null的,没必要判断楼主:你的数据是什么时候放到数据库中的?
    你是不是在ORACLE客户端插入数据后就直接调试程序?
    那么你很可能是没在oracle客户端执行commit
      

  4.   

    你的select语句是不是查uid,你的表示系统表吗?
    你用ResultSetMetaData rmd = rs.getMetaData();
    调用rmd来实现你要找的数据。
      

  5.   

    大哥你看一下你的sql 语句
    String query="select userid as test from holdingtable";
    ResultSet r=s.executeQuery(query);
    String n;
    while(r.next()){
     System.out.println(r.getString("userid"));
     System.out.println("while try 1");
     }
    这样写就OK了
      

  6.   

    我方照这个例子,作了一个测试,发现,使用别名是可以的。
    我的SQL是这样的:
    String query="select A , A_A1 , to_Char(A_A2,'YYYY/MM/DD') as B from prox.A";
    ResultSet r=s.executeQuery(query);
    String n;
    while(r.next()){
    System.out.println(r.getString("A"));
    System.out.println(r.getString("A_A1"));
    System.out.println(r.getString("B"));
    System.out.println("while try 1");为什么兄台的别名不可以呢?
    请解释