public static void delete(SmartObject so)
        throws SmartObjectException {
  try {
    StringBuffer sb = new StringBuffer("DELETE FROM ");
    sb.append(so.getTableName());
    sb.append("WHERE id = " + so.getID());
    executeUpdate(sb.toString());
  }
  catch (Exception e) {
    throw new SmartObjectException("Exception deleting object: " + so, e);
  }
}