o
    EDi9                     @   sN   d dl mZmZ d dlmZ G dd deZdedee dedefd	d
ZdS )    )
NamedTupleSequence)ClickHouseTypec                   @   sF   e Zd ZU dZeed< eed< dZeed< dZeed< e	dd Z
dS )	TableColumnDefz?
    Simplified ClickHouse Table Column definition for DDL
    namech_typeN	expr_typeexprc                 C   s6   | j  d| jj  }| jr|d| j d| j 7 }|S )N )r   r   r   r	   )selfr	    r   V/var/www/Datamplify/venv/lib/python3.10/site-packages/clickhouse_connect/driver/ddl.pycol_expr   s   zTableColumnDef.col_expr)__name__
__module____qualname____doc__str__annotations__r   r   r	   propertyr   r   r   r   r   r      s   
 r   
table_namecolumnsengineengine_paramsc                 C   sV   d|  dd dd |D  d| d}|r)| D ]\}}|d| d| 7 }q|S )NzCREATE TABLE z (z, c                 s   s    | ]}|j V  qd S )N)r   ).0colr   r   r   	<genexpr>   s    zcreate_table.<locals>.<genexpr>z	) ENGINE r
   )joinitems)r   r   r   r   stmtkeyvaluer   r   r   create_table   s
   (r"   N)	typingr   r   !clickhouse_connect.datatypes.baser   r   r   dictr"   r   r   r   r   <module>   s    "