我有这个代码,我知道如何打印一行,但是现在我要打印超过1行,我想要打印所有类别中的行"其他"。如果有人可以提供帮助,我尝试自己做了最近几个小时,但无法设法制作代码......谢谢:)
public Object[][] getCatOther() {
ResultSet rs=null;
Object[][] catOther=null;
connectToDatabase();
String category = "Other";
String queryString = "SELECT * FROM product where category='"+category+"'";
try
{
rs=st.executeQuery(queryString);
rs.last();
int recordCount=rs.getRow();
rs.beforeFirst();
catOther=new Object[recordCount][6];
//System.out.println("test1");
while(rs.next())
{
catOther[0][0]=rs.getInt("productId");
catOther[0][1]=rs.getString("productName");
catOther[0][2]=rs.getFloat("cost");
catOther[0][3]=rs.getString("trademark");
catOther[0][4]=rs.getString("description");
catOther[0][5]=rs.getString("category");
}
for(int i = 0;i<6;i++)
{
System.out.println(catOther[0][i]);
}
disconnectFromDatabase();
}
catch(SQLException sqle)
{
JOptionPane.showMessageDialog(null,sqle.getMessage(),
"SQL Error",JOptionPane.WARNING_MESSAGE);
}
//disconnectFromDatabase();
return catOther;
}
答案 0 :(得分:3)
问题是你不断覆盖相同的数据。您需要在调用rs.next()时保留索引引用;
prototype
比循环数组并打印值更重要。