package dbs; import java.sql.*;

public class VorlesungenBean {

    Connection con  = null;
    String con_err  = null;
    String profname = null;

    public VorlesungenBean() {
      try {
      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
      con = DriverManager.getConnection(
      "jdbc:microsoft:sqlserver://arnold.informatik.uni-osnabrueck.de:1433",
                                        "erika","mustermann");
      }
      catch(Exception e) { con_err = e.toString(); }
    }

  public void   setProfname(String name) { profname = name; }

  public String getProfname()            { return profname; }

  public String generiereVorlListe(){
    Statement stmt = null;
    ResultSet rs   = null;
    if (con==null) return ("Probleme mit der Datenbank: "+con_err + "<BR>");
    StringBuffer result = new StringBuffer();
    try{
      stmt = con.createStatement();
      String query = 
        "select v.vorlnr, v.titel, v.sws from vorlesungen v, professoren p "+
        "where v.gelesenvon = p.persnr and p.name ='" + profname + "'";
      rs = stmt.executeQuery(query);
      result.append("<UL>");
      while (rs.next()) 
        result.append("<LI>"+rs.getInt("VorlNr")+": "+rs.getString("Titel")+ 
                      " (mit " + rs.getInt("SWS") + " SWS)" + "</LI>");
      result.append("</UL>"); 
    }
    catch(SQLException e) {
      result = new StringBuffer("Bei der Abfrage fuer " + profname +
               " trat ein Fehler auf: " + e.getMessage() + "</BR>");
    }
    return result.toString();
  }

  public void finalize () {
    try {if (con != null ) con.close();} catch (SQLException ignorieren) {}
  }
}