import java.sql.*;
/**
 * Datenbank-Session
 * 
 * @author Manuel Friedrich
 * @version 2006-02-15
 */
public class Datenbank
{   
    String MyURL;     // URL der Datenbank
    String passwort; // passwort für die MySQL-Datenbank
    String benutzername; //Loginname für die MySQL-Datenbank
    Statement befehl;
    String SQLBefehl;  // Befehl
    Connection verbindung; 
	
	/**
	 * @param String Name der MySQL-Datenbank
	 * 
	 * 
	 */
	
	public Datenbank(String datenbankname)
	{
	    MyURL="jdbc:mysql://localhost/"+datenbankname;
	   // MyURL="jdbc:mysql://db187.puretec.de/"+datenbankname;
	   //  MyURL="jdbc:mysql://mysql.1blu.de/"+datenbankname; 
	     benutzername="root";
	   //  benutzername="dbo151618079";
	   //   benutzername="mysql2924_18492";
	    passwort="";
	   // passwort="dCRpAX6B";
	   // passwort="YWHQhn";
	   SQLBefehl=null;
	   verbindung=null;
		}
	
	/**
	 * Verbindung zur Datenbank aufbauen und Befehl ausführen
	 * @param SQLBefehl als SQL-Statement, z. B. SELECT * from bsptabelle;
	 * @return ResultSet als Tabelle der Abfrage
	 */
	public void verbindungAufbauen(){
	   try
	   {
	     Class.forName("com.mysql.jdbc.Driver");
	   }
	   catch(Exception e)
	   {
	     System.out.println("Treiber konnte nicht geladen werden");
	   }
       try
       {
	     verbindung=DriverManager.getConnection(MyURL, benutzername, passwort);
	     befehl=verbindung.createStatement();
       }
	   catch (Exception e)
	   {
	     System.out.println("Schade, Verbindung nicht hergesetllt");
	     System.out.println(MyURL);
	     System.out.println(benutzername);
  
	     
	   }
	   }


	public ResultSet selectAnfrage(String SQLBefehl){
	
	   try
	   {
         //ResultSet datenmenge;
         ResultSet datenmenge;
	     datenmenge=befehl.executeQuery(SQLBefehl);
	     return datenmenge;
       }
	   catch(Exception e){
	      System.out.println(SQLBefehl);
	      System.out.println("Fehler 03 (SELECT-Abfrage): Kann Daten nicht lesen");
	      
	      return null;
	   }
	}
	
	
	
	
	
	
	public void insertAnfrage(String SQLBefehl){
	   
	   
         //ResultSet datenmenge;
         int datenmenge;
       try {
	     datenmenge=befehl.executeUpdate(SQLBefehl);
	     
       }
	   catch(SQLException e){
	     // System.out.println(SQLBefehl);
	     // System.out.println("Fehler 004 (INSERT-Abfrage): Kann Daten nicht lesen");
	   }
	      
	     
	   
	}
	
	/**
	 * Verbindung beenden, nachdem Anfrage erfolgreich ausgeführt wurde
	 */
		
	public void verbindungBeenden(){
	
	try {
	  verbindung.close();
	}
	catch(Exception e){
	   System.out.println("Kann Verbindung nicht beenden! / ist schon beendet?");
	}
	}

	
}
