public function escape($VAL)
    {
        // save data
        if (is_numeric($VAL)) {
            if (floatval($VAL) == intval($VAL)) {
                $VAL = intval($VAL);
                settype($VAL, 'integer');
            } else {
                $VAL = floatval($VAL);
                settype($VAL, 'float');
            }
        } else {
            // \PDO::quote() also adds colon before and after the string, so we
            //  have to remove it to keep it compatible with old style.
            $VAL = substr($this->sql->quote(strval($VAL), \PDO::PARAM_STR), 1, -1);
        }

        return $VAL;
    }