数据库表,其实就是一个table形式,我们可以根据自己的需要来取这些数据。以下讲的是如何动态得到一个表的所有数据。
//亲,如果对你有用,给好评哦。。
public class Test{
//以下代码为手写,未经检测,大概原理就是以下这样,不会有大错的地方
public String[][] getDataSet(){ //之所以取名为dataSet,因为在.net中,这就是一个多维的数据集合
Connection conn;
PreparedStatement pst = null;
ResultSet rs = null;
ResultSetMetaData rsmd = null;
String[][] dataSet = null;
try{
conn = .....;//得到数据库连接的实现,这里就不写了
pst = conn.prepareStatement("select * from tableName where ..... order by... desc" );
pst.setString(....)--pst.setInt(------------);
rs = pst.executeQuery(); //结果集
rsmd = rs.getMetaData();
int index = -1; //索引标识
rs.last(); //移动到最下一行
int rows = rs.getRow(); //得到数据记录行数
rs.beforeFirst(); //复位鼠标位置到第一行之前
dataSet = new String[rows][rsmd.getColumnCount()]; //初始化二维数组
while(rs.next()){ //循环记录条数
index++;
for(int i = 0; i <rsmd.getColumnCount(); i++){ //动态循环列
String colName = rsmd.getColumnName(i+1);
String rowVal = rs.getString(colName);
dataSet[index][i] = rowVal; //定位二维数组,赋值
}
}
}catch(Exception e){
}finally{
close(rs, null, pst, conn);
}
return dataSet;
}
public void close(rs, st, pst, conn){
//closecode is here....
}
}