import java.sql.*;
import java.util.*;
import java.io.*;public class QueryTemp
{
public static void main(String [] args)
{
ResultSet result;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                            String url = "jdbc:odbc:LocalServer";
Connection conn = DriverManager.getConnection(url,"sa","000000");
Statement stmt = conn.createStatement();
result = stmt.executeQuery("select pub_name from Publishers");
Vector vector = new Vector(1,1);
Object obj;

while(result.next())
{
System.out.println(result.getString(1));
//如果把下面一行注释掉可以把结果集显示出来
//现在我想把查询到的内容加入一个集合类例如Vector
//然后再显示出来怎么办?????????????????????
vector.addElement(result.getString(1));

}

System.out.println("Vector 中的元素个数是: " + vector.size());
for(int i=0; i < vector.size(); i++)
{
obj = vector.elementAt(i);
System.out.println(obj.toString() );
}
}
catch(Exception e)
{
System.out.println("Error: " + e);
}
}
}

解决方案 »

  1.   

    import java.sql.*;
    import java.util.*;
    import java.io.*;public class QueryTemp
    {
    public static void main(String [] args)
    {
    ResultSet result;
    try
    {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                                String url = "jdbc:odbc:LocalServer";
    Connection conn = DriverManager.getConnection(url,"sa","000000");
    Statement stmt = conn.createStatement();
    result = stmt.executeQuery("select pub_name from Publishers");
    Vector vector = new Vector();


    while(result.next())
    {

    vector.addElement(result.getString(1));

    }

    System.out.println("Vector 中的元素个数是: " + vector.size());
    for(int i=0; i < vector.size(); i++)
    {
    String x=(String)vector.elementAt(i); System.out.println(x);
    }
    }
    catch(Exception e)
    {
    System.out.println("Error: " + e);
    }
    }
    }
    ////////////////////////
    这样可以么?没调试。你自己调试下。
      

  2.   

    Vector => ArrayList<String> list = new ArrayList<String>...list.add(rs.getString(1));...for(String str : list){
    System.out.println(str);
    }
      

  3.   

    Vector vector = new Vector(1,1);

    Vector vector = new Vector();
      

  4.   

    你是不是要把resultset得到的一行记录放到一个Vector里面去?
    用resultset.getMetaData().getColumnCount() 可以决定Vector的长度.
      

  5.   

    谢谢各位的帮忙,大侠们新年好!!   vector.addElement(result.getString(1));就是只存储了一个值,我是想把一列存到一个Vector中去,然后发到客户端,我再试一试。
      

  6.   

    问题出来了,在while循环里,谢谢各位指教孔夫子
    import java.sql.*;
    import java.util.*;
    import java.io.*;public class QueryTemp
    {
    public static void main(String [] args)
    {
    ResultSet result;
    Connection conn=null;
    try
    {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    String url = "jdbc:odbc:LocalServer";
    conn = DriverManager.getConnection(url,"sa","000000");
    Statement stmt = conn.createStatement();
    result = stmt.executeQuery("select pub_name from Publishers");
    Object obj;
    Vector v=new Vector();
    while(result.next())
    {
        Vector ve=new Vector();
        ve.addElement(result.getObject(1));
        v.addElement(ve);                    
    }
    System.out.println("Vector 中的元素的个数是: " + v.size());
    for(int i=0; i < v.size(); i++)
    {
    obj = v.elementAt(i);
    System.out.println(obj.toString());
    }
    }
    catch(Exception e)
    {
    System.out.println("Error: " + e);
    }
    }
    }