 package paketWohnmobil;
 
 import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
 
 import paketWohnmobil.Wohnmobil_FK;
 
 public class Wohnmobil_DAO1
 {  // Attribute für den Verbindungsaufbau und den Datenbankzugriff

  // Anfang Attribute
   Connection dbverbindung =null;   //Objekt für den Verbindungsaufbau
   String dbtreiber;                //Variable für den Treiber und Pfad zur DB
   Statement ausfuehrungSQL=null;   //Objekt für die Ausführung von SQl-Anweisung
   String textSQL;                  //Variable zur Aufnahme von SQL-Anweisungen
   ResultSet abfrageMenge = null;
   Wohnmobil_FK wmOb;
                     
  // Ende Attribute
  
  
  
  //Konstruktor
  public Wohnmobil_DAO1(Wohnmobil_FK pwmOb)
  { this.wmOb =  pwmOb;
  }
  
  // Anfang Methoden
  
  //Methoden zum DBZugriff nicht öffentlich
  private void oeffneDB()
  {
    //Driver Manager
    try
    {
      Class.forName("com.mysql.jdbc.Driver").newInstance();
    }
    catch(Exception e)
    {
      System.out.println("Driver:" + e.getMessage());
    }
    //Connection
    try
    {
      dbtreiber="jdbc:mysql://localhost/db_wohnmobil";
      dbverbindung=DriverManager.getConnection(dbtreiber,"root","");
      ausfuehrungSQL = dbverbindung.createStatement();
      System.out.println("Datenbankverbindung erstellt");
    }
    catch(SQLException err)
    {
      System.out.println("Driver: "+err.getMessage());
    }
  }
  
  private void schliessenDB()
  {
    try
    {
      ausfuehrungSQL.close();
      dbverbindung.close();
    }
    catch(SQLException err)
    {
      System.err.println(err);
    }
  }
  
  //eigene Methoden öffentlich
  public void sucheAlleDatensatz()
  {
    //Wohnmobil_FK wmob = new Wohnmobil_FK();
    textSQL ="SELECT idwohnmobil, klasse, personennutzung, tagespreis, freikm, kmpreis, fahrzeuganzahl ";
    textSQL =textSQL + " FROM wohnmobil;";
    System.out.println(textSQL);
    oeffneDB();
    System.out.println("Datenbank geoeffnet");
    try
    {
      abfrageMenge = ausfuehrungSQL.executeQuery(textSQL);
      
      /*
      while (abfrageMenge.next())
      {wmob.setIdWohnmobil(abfrageMenge.getInt(1));
      wmob.setKlasse(abfrageMenge.getString(2));
      wmob.setPersonennutzung(abfrageMenge.getInt(3));
      wmob.setTagespreis(abfrageMenge.getDouble(4));
      wmob.setFreikm(abfrageMenge.getInt(5));
      wmob.setKmpreis(abfrageMenge.getDouble(6));
      wmob.mehrenFahrzeuganzahl(abfrageMenge.getInt(7));
      
      System.out.print( wmob.getIdWohnmobil() + " ");
      System.out.print( wmob.getKlasse() + " ");
      */
    }  
    
    catch (Exception e)
    {
      System.out.println( "Wohnmobil Datensuche fehlgeschlagen");
      wmOb= null;
    }
  }
  /*
  schliessenDB();
  System.out.println("Datenbank geschlossen");
  */
  
  public boolean naechsterDatensatz()
  {   boolean mNaechsterDatensatzOK = false;
    try { 
      abfrageMenge.next();
      wmOb.setIdWohnmobil(abfrageMenge.getInt(1));
      wmOb.setKlasse(abfrageMenge.getString(2));
      wmOb.setPersonennutzung(abfrageMenge.getInt(3));
      wmOb.setTagespreis(abfrageMenge.getDouble(4));
      wmOb.setFreikm(abfrageMenge.getInt(5));
      wmOb.setKmpreis(abfrageMenge.getDouble(6));
      wmOb.mehrenFahrzeuganzahl(abfrageMenge.getInt(7));
      
      mNaechsterDatensatzOK = true;
      
    } 
    catch(Exception e) {
      mNaechsterDatensatzOK = false;
    } 
    return mNaechsterDatensatzOK ;
  }
  // Ende Methoden
  
}