[JAVA] ENUM Werte aus MySQL auslesen?

Habs gefunden falls es jemanden interessiert.

Connection und Statement müssen zuerst erzeugt werden.

Code:
public Object[] getEnumValues(String table, String column) {
    Object[] enum = null;

    try {
      //MySQL describe table column
      String sqlQuery = "DESCRIBE `" + table + "` `" + column + "`";

      //Execute describe query
      this.data = this.stmt.executeQuery(sqlQuery);

      //Jump to next data set
      this.data.next();

      //Create tokens of enum field
      StringTokenizer token = new StringTokenizer(this.data.getString("Type"), ",'()");

      //To jump over "enum"
      token.nextToken();
      enum = new Object[token.countTokens()];

      for (int i = 0; token.hasMoreTokens(); i++) {
        enum[i] = token.nextToken();
      }
    }
    catch (NullPointerException npe) {
      System.out.println("Es besteht keine Verbindung zur Datenbank");
      npe.printStackTrace();
    }
    catch (SQLException sqle) {
      sqle.printStackTrace();
    }
    //Return enum object array
    return enum;
  }
 
Zurück