Blog

  • Create Table IF NOT EXISTS … in JavaDB/Derby

    In MySQL gibt es das praktische Konstrukt “Create Table IF NOT EXISTS foo”.
    Möchte man dieselbe Funktionalität in Apache Derby/JavaDB, wird oft empfohlen, ein
    Select auf die entsprechende Tabelle durchzuführen und die entsprechende Exception
    abzufangen (siehe z.B. hier). – Für ambitionierte Programmierer nur bedingt akzeptabel,
    da Flußkontrolle durch Exceptions nur im Ausnahmefall eine schöne Lösung darstellt (siehe z.B. hier).

    Eine schönere Lösung ist es, zu prüfen, ob die Tabelle (hier “Foo”) existiert, um dann ohne Exception
    entsprechen reagieren zu können:

    DatabaseMetaData dmd = conn.getMetaData();
    ResultSet rs = dmd.getTables(null,”APP”, “FOO”,null);
    if (!rs.next()) {
    s.executeUpdate(“CREATE TABLE FOO (I INT)”);
    }

  • Transparente JInternalFrames mit Nimbus L&F

    Gerade mal wieder mit Nimbus rumgespielt und dabei entdeckt, dass man ja nicht nur die Farben des Look&Feels ändern kann sondern auch JInternalFrames (semi-)transparent gestalten kann (siehe Screenshot).

    Der zugehörige Code findet sich im Sun-Forum.

    Transparente JInternalFrames