the above code gives me an sqlexception because the statement "rs.getString("Book_Id")" is called twice, if you see, i had to change the second call to getString("Book_Id") with this code:
why is this like this?i mean as long as i am not calling rs.next(), i should be able to access a column in a given record as many times as i want...right?
rs1 = st1.executeQuery("select Author_Name from Authors where Book_Id='"+ rs.getString("Book_Id")+"'");
why don't you use
rs1 = st1.executeQuery("select Author_Name from Authors where Book_Id='"+ bookObject.getBookID()+"'");
I hope that there will an accessor method for the ID field in the Book class that you have created.
result set is like a pointer. once you get it ahead of one column you can't get back to that column....This means that you cannot go backwards in column list.....
If there is a way to get to one column again I don't know it....
The javadoc for ResultSet recommends you don't do it, so it's probably something in the database that doesn't like it. It may work okay on other databases.
For maximum portability, result set columns within each row should be read in left-to-right order, and each column should be read only once.