hejsan! Tror CachedRowSet I javax.sxl.rowset. är det du ska titta på: http://java.sun.com/j2se/1.5.0/docs/api/. Här finns en artikel från JavaWorld: http://www.javaworld.com/javaworld/jw-02-2001/jw-0202-cachedrow.html Jag löste det som så att jag lade informationen från resultsetet i en Array som jag sedan returnerar istället. Kanske inte den snyggaste lösningen den effektivaste.. men den funkade åt mig..Kan man returnera ett ResultSet från en metod??? i så fall hur ??
Jag är i behov av en metod som returnerar ett resultSet från en sql-fråga.
1. Är det möjligt att returnera ett resultSet från en metod
2. försvinner inte resultSetet när du stänger connection ?? verkar så ??
3. förslag på hur jag löser detta?????
//JonasSv: Kan man returnera ett ResultSet från en metod??? i så fall hur ??
Sv: Kan man returnera ett ResultSet från en metod??? i så fall hur ??
Sv: Kan man returnera ett ResultSet från en metod??? i så fall hur ??
public class Database {
private Connection con = null;
private ResultSet rs;
private Statement stmt;
/** Creates a new instance of dbConnection */
public Database() throws SQLException, ClassNotFoundException{
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://adress/databas?user=****&password=********");
con.setReadOnly(false);
}
catch (ClassNotFoundException x) {
System.out.println("JDBC Drivrutin ej hittad");
}
}
public ResultSet getQuery(String sqlSelect) {
try {
stmt = con.createStatement();
rs = stmt.executeQuery(sqlSelect);
}
catch (SQLException x) {
System.out.println("System.fel: "+ x);
}
return rs;
}
public void close() throws SQLException {
if (rs!= null)
rs.close();
if (stmt != null)
stmt.close();
if (con != null)
con.close();
}
}
sedan anropar jag denna med vilket måste ligga i en try/catch sats osv.. hoppas det hjälper dig någoot iaf
Database db = new Database();
ResultSet rs = db.getQuery("SELECT * FROM department WHERE name='"+department+"'");
rs.next();
name = department;
address = rs.getString("address");
funds = rs.getInt("funds");
db.close();