我有一个包含此列的表格(id
,name
,isbn
,borrowedStatus
(varchar),Date
)以及我的表格中的一些行
现在我想获得特定borrowedStatus
的{{1}}值,然后我需要识别该字符串(是或否)。
这是我的代码:
id
但是这段代码在执行时有这个异常:
public void booksTableBorrowChanged(int rowInModel) {
Object bookId = this.getValueAt(rowInModel, 0);
Connection con;
PreparedStatement ps1;
String query1 = "select borrowedStatus from books where id=" + bookId;
ResultSet rs = null;
try {
con = DriverManager.getConnection(...);
ps1 = con.prepareStatement(query1);
rs = ps1.executeQuery();
if (String.valueOf(rs.getString("BorrowedStatus")).equalsIgnoreCase("No")) { // then do Borrow Action
System.out.println("Old statuse : No");
// then do other stuff
}
} catch (SQLException sqle) {
sqle.printStackTrace();
}
}
我该如何解决这个问题?
答案 0 :(得分:1)
来自ResultSet
' Javadoc:
ResultSet对象维护一个指向其当前数据行的游标。最初,光标位于第一行之前。下一个方法将游标移动到下一行,因为当ResultSet对象中没有更多行时它返回false,它可以在while循环中用于迭代结果集。
请注意以&#34开头的句子;最初":您首先必须先致电next
才能访问任何数据。