Exemple #1
0
  public String updateSQL(Object entity) {
    entityFillField(entity);

    String sql = UPDATE;

    sql += " " + catalog + ".";

    sql += table;

    Object fieldValue;
    boolean isHead = true;

    for (Field field : entityField) {

      if (!field.isPrimaryKey()) {

        if (isHead) {
          isHead = false;
          sql += " SET ";
        } else {
          sql += ",";
        }

        fieldValue = field.getFieldValue();

        sql += field.getFieldName() + "=";

        if (field.getFieldType() == Types.TIMESTAMP) {
          sql += "'" + CalendarUtils.dtformat(((Date) fieldValue)) + "'";
        } else if (field.getFieldType() == Types.DATE) {
          sql += "'" + CalendarUtils.dformat(((Date) fieldValue)) + "'";
        } else {
          sql += StringUtils.fieldValue(fieldValue);
        }
      }
    }

    isHead = true;
    for (Field field : entityField) {

      if (field.isPrimaryKey()) {
        if (isHead) {
          isHead = false;
          sql += " WHERE ";
        } else {
          sql += field.getWhereBy();
        }

        fieldValue = field.getFieldValue();

        sql += field.getFieldName() + "=";

        if (field.getFieldType() == Types.TIMESTAMP) {
          sql += "'" + CalendarUtils.dtformat(((Date) fieldValue)) + "'";
        } else if (field.getFieldType() == Types.DATE) {
          sql += "'" + CalendarUtils.dformat(((Date) fieldValue)) + "'";
        } else {
          sql += fieldValue.toString();
        }
      }
    }

    return sql;
  }