public function fromSqlDate($sqlDate, Provider $provider = null)
    {
        if ($sqlDate === null) {
            return null;
        }

        $this->setParameterProvider($provider);
        // The "!" zeroes out the hours, minutes, and seconds
        $phpDate = DateTime::createFromFormat('!' . $provider->getDateFormat(), $sqlDate);

        if ($phpDate === false) {
            $phpDate = $this->parseUnknownDateTimeFormat($sqlDate);
        }

        return $phpDate;
    }