public <T> T executeWithKey(Class<T> type) {
        return executeWithKey(type, null);
    }
Execute the clause and return the generated key cast to the given type.
If no rows were created, null is returned, otherwise the key of the first
row is returned.

@param <T>
@param type type of key
@return generated key
querydsl-sql/src/main/java/com/querydsl/sql/dml/AbstractSQLInsertClause.java