我有一个包含两个SQL列的表(名称和地址)。
我想显示第二列的第一个和第二个数据。
我正在使用此代码
while (res.next()){
System.out.print(res.getString(2))
}
但它给了我第二列的全部内容 如何显示第一个和第二个数据
答案 0 :(得分:1)
您在getString
方法中看到的索引是列索引。所以:
while (res.next()){
System.out.print(res.getString(1) + " " + res.getString(2));
}
答案 1 :(得分:0)
我认为你的意思是你只想要前两行?
只计算您输出的行数,并尽早结束循环。通过使用while .. next循环作为示例代码,如果ResultSet
只有零行或一行,则可以避免出现问题。
int rowsOutput = 0;
while( res.next()) {
System.out.println(res.getString(2));
rowsOutput ++;
if( rowsOutput >= 2) {
break;
}
}
或者,在SQL中添加LIMIT
子句,仅选择前两行。
答案 2 :(得分:0)
但它给了我所有的第二列我怎么能显示第一列和 第二个数据
这是因为你创建了循环->
,而有任何数据,打印出来。
因此,如果您只想打印前两行,则需要创建一些帮助变量e.q。
int index = 0;
while (res.next() && index < 2) {
System.out.print(res.getString("name"));
System.out.print(res.getString("address"));
index++;
}
注意:我建议您使用列名而不是索引。通过这种方式,您可以避免错误索引(常见错误)的问题。