getAsSQLTextParam method

String getAsSQLTextParam(
  1. TParam? param
)

Implementation

String getAsSQLTextParam(TParam? param) {
  if (param == null || param.isNull) return 'Null';
  switch (param.dataType) {
    case TFieldType.ftGuid:
    case TFieldType.ftMemo:
    case TFieldType.ftFixedChar:
    case TFieldType.ftString:
      return quotedStr(getParamAsString(param));
    case TFieldType.ftDate:
      return "'${_formatDateTimeFS('yyyy-mm-dd', param.asDateTime)}'";
    case TFieldType.ftTime:
      return "'${timeIntervalToString(param.asDateTime)}'";
    case TFieldType.ftDateTime:
      return "'${_formatDateTimeFS('yyyy-mm-dd hh:nn:ss.zzz', param.asDateTime)}'";
    case TFieldType.ftCurrency:
    case TFieldType.ftBCD:
      return '${param.asCurrency}';
    case TFieldType.ftFloat:
      return '${param.asFloat}';
    case TFieldType.ftFMTBcd:
      // StringReplace(AsString, '.', FS.DecimalSeparator) — the separator character
      // is '.' on both sides, so this is an equivalent rewrite
      return param.asString.replaceFirst(
          ".", sqlFormatSettings.decimalSeparator);
    default:
      return param.asString;
  }
}