'Execute a schema.DDL object.'

def _execute_ddl(self, ddl, multiparams, params):

    if (self._has_events or self.engine._has_events):
        for fn in self.dispatch.before_execute:
            (ddl, multiparams, params) = fn(self, ddl, multiparams, params)
    dialect = self.dialect
    compiled = ddl.compile(dialect=dialect)
    ret = self._execute_context(dialect, dialect.execution_ctx_cls._init_ddl, compiled, None, compiled)
    if (self._has_events or self.engine._has_events):
        self.dispatch.after_execute(self, ddl, multiparams, params, ret)
    return ret
