// Programm 5-11c:  ./JDBCclientserver/SqlUeberCgi.java
import java.sql.*;
public class SqlUeberCgi {
  public SqlUeberCgi(String[] args) {
    String sql = "SELECT * FROM ";
    if (args.length >= 2 &&
                       args[0].toLowerCase().equals("tabelle"))
      sql += args[1];
    StringBuffer buf = new StringBuffer("<PRE>#\n");
    for (int i = 2; i < args.length; i += 2) {
      if (i == 2) sql += " WHERE ";
      sql += args[i] + " LIKE '" + args[i+1] + "%'";
      if (i < args.length - 2) sql += " AND ";
    }
    try {
      System.out.println(sql);
      Class.forName("com.imaginary.sql.msql.MsqlDriver"); 
      Connection c = DriverManager.getConnection(
                           "jdbc:msql://localhost:1112/Kurse");
      Statement s = c.createStatement();
      ResultSet rs = s.executeQuery(sql);
      ResultSetMetaData rsmd = rs.getMetaData();
      while(rs.next()) {
        for (int i = 1, max = rsmd.getColumnCount();
                                                 i <= max; i++)
          buf.append(rs.getString(i) + (i == max?"\n":", "));
      }
    }
    catch (Exception ex) {
      buf = new StringBuffer("SQL-Fehler: " + ex.getMessage());
    }
    finally {
      System.out.println(buf);
    }
  }
  public static void main(String[] args) {
    new SqlUeberCgi(args);                 // Programm starten
  }
}                                     // Ende class SqlUeberCgi 
