package paketBMIDB;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


public class Datenbankzugriff 
{
// Variablen für den Verbindungsaufbau und den Datenbankzugriff
Connection conn = null;   //Verbindungsobjekt
String mDB;               //Variable für den Treiber und den Pfad zur DB 
Statement stmtSQL = null; //Objekt für die Ausführung von SQL-Anweisungen 
String mSQL ;             //Variable zur Aufnahme der SQL-Statements


 // Konstruktor  
 public Datenbankzugriff() 
 {}


 // Nicht öffentliche Methoden der Klasse Datenbankzugriff
 private void oeffneDB()  
 {
    // DriverManager
    try
    {	
       Class.forName("com.mysql.jdbc.Driver");
    }
    catch(Exception e)
    {
       System.out.println("Driver: " + e.getMessage());
    }
  
    // Connection 
    try
    {
       mDB = "jdbc:mysql://localhost/bmi";
       conn = DriverManager.getConnection(mDB,"root","");
       stmtSQL = conn.createStatement();
    }
    catch (SQLException err)
    {
       System.out.println("Driver: " + err.getMessage()); 
    }
 }

 private void schliesseDB() 
 {
	try 
	{
	   stmtSQL.close();
	   conn.close();
	}
	catch (SQLException err)   
	{
       System.err.println(err);
    }
 }
 
 public void anfuegen(Person pNeuePerson)
{
  mSQL = "Insert into Person (gewicht, groesse, geschlecht, bmi) ";
  mSQL = mSQL + " Values("; 
  mSQL = mSQL + pNeuePerson.getGewicht() + ",";
  mSQL = mSQL + pNeuePerson.getGroesse() + ",";
  mSQL = mSQL + "'" + pNeuePerson.getGeschlecht() + "',";
  mSQL = mSQL + pNeuePerson.getBMI() + ");";
  
  oeffneDB();
  try 
  {
   System.out.println(mSQL);
   stmtSQL.executeUpdate(mSQL); 
   System.out.println("Daten erfolgreich angefügt!");

  }
  catch(Exception e)   
  {
   System.out.println("Anfügen fehlgeschlagen!");
  }
  schliesseDB(); 
}

}
