JavaEE+MSSQL 2008数据库开发成绩管理系统遇到以下问题,求解决方案:有一个存储过程,实现的是查询成绩,通过传入参数来实现控制成绩的类型(也就是控制要查什么成绩,
例如期末,平时,期中等),但是这个存储过程里的语句是动态的行列转换语句,我不知道每个参数穿
进去后返回的结果有多少个字段,我需要怎么遍历这样的结果,求指教。急急急
例如期末,平时,期中等),但是这个存储过程里的语句是动态的行列转换语句,我不知道每个参数穿
进去后返回的结果有多少个字段,我需要怎么遍历这样的结果,求指教。急急急
1、可以直接用字段顺序获取值,比如: rs.getString(1); rs.getString(2);
2、可以获取所有字段信息,ResultSetMetaData meta = rs.getMetaData(); 然后可以 meta.getColumnCount() 或者 meta.getColumnName()简单吧?
http://my.oschina.net/wstone/blog/9579?from=rss
不过这样做挺难维护的。个人建议做成3个不同的成绩分开处理。
ResultSetMetaData meta = rs.getMetaData();
while (rs.next()) {
for (int i = 1; i <= meta.getColumnCount(); i++) {
System.out.print(meta.getColumnName(i) + ": " + rs.getObject(i) + "; ");
}
System.out.println();
}