如何只从java.sql.ResultSet获取第一行?

llm*_*llm 8 java jdbc

我有一个ResultSet对象包含从SQL查询返回的所有行.

我希望能够(在java代码中,不强制它在SQL中)能够获取ResultSet并对其进行转换,使其仅包含1(第一个)行.

实现这一目标的方法是什么?另外,是否有另一个适当的类(在java.sql或其他地方的某个地方)只存储一行而不是修剪我的ResultSet?

谢谢!

Ten*_*she 16

为了限制结果集中的行数,您可以执行以下操作:

String yourQuery = "select * from some_table";
PreparedStatement statement = connection.prepareStatement(yourQuery); 
statement.setMaxRows(1); 
rs = statement.executeQuery();
Run Code Online (Sandbox Code Playgroud)

对于只能容纳一行的特定类,这实际上取决于您要对数据执行的操作.例如,您可以只提取结果集的内容并将它们存储在数组中,或者如果您需要名称以及值的映射.如果您希望使用特定对象而不是通用数据结构,您也可以将数据读入POJO.