Daten aus Datenbank holen

  • Themenstarter Themenstarter Blubdub
  • Beginndatum Beginndatum
B

Blubdub

Gast
Ich habe folgendes Problem: Ich arbeite zum Spaß an einer GUI mit der ich Daten in eine Datenbank einschreiben kann. In der Datenbank gibt es atm nur Patient und Krankenkasse. Jetzt will ich aber, dass er nach dem drücken des anlegen buttons, erstens die daten in die Patient Tabelle einschreibt und dann mithilfe des Verweises der Krankenkassennummer, mir den Krankenkassenname aus dem Table Krankenkasse abholt und in die GUI einträgt, sozusagen automatisch ein leeres Textfeld (das des Kassennamens) füllt. Ich hoffe man verstehts...
 
Naja so wie du es reinschribst holst du es auch wieder raus...
Java:
    Connection Con;
    Statement Stmt;
    try{
      Class.forName("com.mysql.jdbc.Driver").newInstance();

      Con = DriverManager.getConnection(
              "jdbc:mysql://SERVER/DATENBANK",
              "USER","PW");
      Stmt = Con.createStatement();

      ResultSet result = Stmt.executeQuery(
         "SELECT * FROM TABELLE WHERE Krankenkasse =" + Objekt.kassennummer );
      while (result.next()){
        System.out.println(result.getString("name"));
      }
      Con.close();
    }
    catch (Exception sqlEx){
      System.err.println(sqlEx);
    }
 
Wäre es auch möglich den Wert direkt in das Attribut des Patienten reinzuschreiben? also iwie

einPatient.setKKName(Select...)?
 
Wäre es auch möglich den Wert direkt in das Attribut des Patienten reinzuschreiben?

Ja

also iwie

einPatient.setKKName(Select...)?

Aber nicht so 😉

So z.B. geht es:
Java:
    Connection Con;
    Statement Stmt;
    try{
      Class.forName("com.mysql.jdbc.Driver").newInstance();
 
      Con = DriverManager.getConnection(
              "jdbc:mysql://SERVER/DATENBANK",
              "USER","PW");
      Stmt = Con.createStatement();
      List<Patient> malePatienten = new ArrayList<Patient>();
      ResultSet result = Stmt.executeQuery(
         "SELECT * FROM patienten WHERE gender=\'male\'" );
      while (result.next()){
        Patient p = new Patient();
        p.setName((result.getString("name"));
        p.set...
        malePatienten.add(p);
      }
      Con.close();
    }
    catch (Exception sqlEx){
      System.err.println(sqlEx);
    }
 
select query in den setter des Eigenschaft rein schreiben mach weniger Sinn...

Aber grundsätzlich kannst du solche Späße schon mit JPA zb machen... ist aber eher ein Fortgeschrittenes Thema

das geht einfacher: einPatient.setKKName(result.getString("name"));
 

Neue Themen


Zurück
Oben