'Execute a string SQL statement.'

def _execute_text(self, statement, multiparams, params):

    if (self._has_events or self.engine._has_events):
        for fn in self.dispatch.before_execute:
            (statement, multiparams, params) = fn(self, statement, multiparams, params)
    dialect = self.dialect
    parameters = _distill_params(multiparams, params)
    ret = self._execute_context(dialect, dialect.execution_ctx_cls._init_statement, statement, parameters, statement, parameters)
    if (self._has_events or self.engine._has_events):
        self.dispatch.after_execute(self, statement, multiparams, params, ret)
    return ret
