2015-02-11 79 views
0

SQL查询来从一个SQL查询我通常使用下面的代码检索值:检索包含不止一个结果

Set rs = conn.Execute("SELECT...") 
strResult = rs.Fields(0) 
msgbox(strResult) 

至极工作正常,返回一个值的查询。例如,如果查询结果是:

LONDON 
NEW YORK 
BERLIN 

这只会检索“LONDON”

但是,如果我想从这个查询获得的所有值,例如它们显示在一个消息框,如何才能做到这一点?我正在使用SQL Server 2005.

+0

可能重复(http://stackoverflow.com/questions/5674187/data-fetching-from-sql -server-in-vba) – Tanner 2015-02-11 10:49:25

+0

[Excel VBA - 循环记录集](http://stackoverflow.com/questions/25846954/excel-vba-loop-through-recordset) – 2015-02-11 10:49:50

回答

-1

我认为这是更好的,如果你使用JPA或Hibernate像持久性机制。但是如果你不喜欢它,我认为做这件事的最佳选择是创建一个对象的实例,并在该对象中重写toString方法。例如:

String selectTableSQL = "SELECT USER_ID, USERNAME from DBUSER"; 
Statement statement = dbConnection.createStatement(); 

List<User> l = new ArrayList<User>(); //users retrieve from BBDD 

ResultSet rs = statement.executeQuery(selectTableSQL); 
    while (rs.next()) { 
    String userid = rs.getString("USER_ID"); 
    String username = rs.getString("USERNAME"); 
    User u = new User(userid,username); // new USER created 
    l.add(u); //add user to list users object 
} 

for(User u : l){ 
//Get list of users. 
System.out.println(u); 
} 

我希望我帮你的[数据从SQL Server中获取VBA]

+1

这个OP需要一个VBA解决方案,不是C/C++ – PaulFrancis 2015-02-11 11:05:01