import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.sql.Statement; import java.sql.ResultSet; import java.sql.Connection; import java.sql.SQLException; import java.sql.DriverManager; public class HittaRoten { public static void main(String[] args) { try { Class.forName("com.mimer.jdbc.Driver"); Connection connection = DriverManager.getConnection("jdbc:mimer://dbtek0:hemligt@basen.oru.se/dbk"); BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); System.out.println("Ange ett nodnummer: "); int node_to_start = Integer.parseInt(reader.readLine()); int current_node = node_to_start; int steps = 0; int parent_node = -1; while (parent_node != 0) { Statement stmt = connection.createStatement(); String sql = "select * from skogen.noder where nummer = " + current_node; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { parent_node = rs.getInt(2); } if (parent_node != 0) { current_node = parent_node; ++steps; } rs.close(); stmt.close(); } System.out.println("Rotnod (" + steps + " nivaer upp): " + current_node); connection.close(); } catch (SQLException e) { System.out.println("We got one or more SQL exceptions:"); e.printStackTrace(); while (e != null) { System.out.println("SQLException: " + e); System.out.println(" SQLState: " + e.getSQLState()); System.out.println(" Message: " + e.getMessage()); System.out.println(" ErrorCode: " + e.getErrorCode()); e = e.getNextException(); } } catch (Exception e) { System.out.println("Some other exception: " + e); e.printStackTrace(); } } // main } // class HittaRoten