Advertisement
Guest User

Untitled

a guest
Jul 18th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.07 KB | None | 0 0
  1. package de.hdm_stuttgart.mi.sda1.exam.jdbcexport;
  2.  
  3. import javax.xml.transform.Result;
  4. import java.sql.Connection;
  5. import java.sql.DriverManager;
  6. import java.sql.ResultSet;
  7. import java.sql.SQLException;
  8. import java.sql.Statement;
  9.  
  10.  
  11. /**
  12.  * Exporting company data. Execution requires importing corresponding
  13.  * schema and optionally sample data from Sql/sample.sql
  14.  */
  15. public class EmployeeInfo {
  16.    
  17.    /**
  18.     * @param args Unused
  19.     * @throws SQLException Diagnosing database problems.
  20.     */
  21.    public static void main( String[] args ) throws SQLException {
  22.      
  23.       try (final Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/sda", "root", "123")) {
  24.          
  25.          final Statement stmt = conn.createStatement();
  26.          final ResultSet employees = stmt.executeQuery("SELECT * FROM Employee");
  27.          
  28.          while (employees.next()) {
  29.             final Statement stmt2 = conn.createStatement();
  30.             ResultSet departments = stmt2.executeQuery(
  31.                     "SELECT * FROM Department WHERE shortName = '" + employees.getString("department") + "'"
  32.             );
  33.             departments.next();
  34.             String departmentName = departments.getString("name");
  35.             String parent = departments.getString("parent");
  36.  
  37.             boolean test = false;
  38.             while (parent != null) {
  39.                departments = stmt2.executeQuery(
  40.                        "SELECT * FROM Department WHERE shortName = '" + parent + "'"
  41.                );
  42.                if (!departments.isBeforeFirst()) break;
  43.                departments.next();
  44.                parent = departments.getString("parent");
  45.                test = true;
  46.             }
  47.  
  48.  
  49.             String topLevel = null;
  50.             if (test) topLevel = departments.getString("name");
  51.  
  52.  
  53.             System.out.println(
  54.                     employees.getString("commonName")
  55.                       + ", department " + departmentName
  56.                       + (topLevel != null ? ", Top level department " + topLevel : "")
  57.             );
  58.          }
  59.       }
  60.    }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement