관리-도구
편집 파일: ddl.cpython-37.pyc
B ��4]}� � @ s� d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z dd lm Z dd lmZ ddlmZ G dd � d e�Z G dd� dee �ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de �ZG dd� de�ZG d d!� d!e�ZG d"d#� d#e�ZG d$d%� d%e�ZG d&d'� d'e�ZG d(d)� d)e�ZG d*d+� d+e�ZG d,d-� d-e�ZG d.d/� d/e�ZG d0d1� d1e�ZG d2d3� d3e�Z G d4d5� d5e�Z!G d6d7� d7e!�Z"G d8d9� d9e!�Z#d?d;d<�Z$d@d=d>�Z%d:S )Azq Provides the hierarchy of DDL-defining schema items as well as routines to invoke them for a create/drop call. � )�_bind_or_error)�_generative)� Executable)� SchemaVisitor)� ClauseElement� )�event)�exc)�util)�topologicalc @ s e Zd Zdd� ZdS )�_DDLCompilesc K s |j || f|�S )zNReturn a compiler appropriate for this ClauseElement, given a Dialect.)Zddl_compiler)�self�dialect�kw� r �E/opt/alt/python37/lib64/python3.7/site-packages/sqlalchemy/sql/ddl.py� _compiler s z_DDLCompiles._compilerN)�__name__� __module__�__qualname__r r r r r r s r c @ s� e Zd ZdZej�ddi�ZdZdZdZ dZ dd� Zddd�Ze �d d �dd� �Zed d� �Zed dd��Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zeee�Zdd� ZdS )!� DDLElementa� Base class for DDL expression constructs. This class is the base for the general purpose :class:`.DDL` class, as well as the various create/drop clause constructs such as :class:`.CreateTable`, :class:`.DropTable`, :class:`.AddConstraint`, etc. :class:`.DDLElement` integrates closely with SQLAlchemy events, introduced in :ref:`event_toplevel`. An instance of one is itself an event receiving callable:: event.listen( users, 'after_create', AddConstraint(constraint).execute_if(dialect='postgresql') ) .. seealso:: :class:`.DDL` :class:`.DDLEvents` :ref:`event_toplevel` :ref:`schema_ddl_sequences` Z autocommitTNc C s |� | ||�S )N)Z_execute_ddl)r � connectionZmultiparams�paramsr r r �_execute_on_connectionG s z!DDLElement._execute_on_connectionc C s>