Hacked By AnonymousFox
�
�܋fX� � �j � d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddl m
Z
ddl mZ dd l mZ dd
l m
Z
ddl mZ ddl mZ dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ G d� deeeee� � Z G d� de� � Z G d� de� � Z G d� de� � Z G d� de� � ZdS )zd
Provide :class:`_expression.Insert`, :class:`_expression.Update` and
:class:`_expression.Delete`.
� )�util)�
_from_objects)�_generative)�
DialectKWArgs)�
Executable)�_clone)�_column_as_key)�_literal_as_text)�and_)�
ClauseElement)�Null)�_interpret_as_from)�_interpret_as_select)�HasCTE)�HasPrefixes� )�excc �� � e Zd ZdZdZej � ddi� � Z ej � � Z
dZdZdZ
dZd� Zd � Zd
� Zd� Z eee� � Zed� � � Zedd�� � ZdS )�
UpdateBasezDForm the base for ``INSERT``, ``UPDATE``, and ``DELETE`` statements.�update_base�
autocommitTN� Fc �� � �� � fd��� j re|�ct |t � � r|r*t |d t � � st d� � �d� |D � � � _ t
|� � dfS t |t t f� � rU|rSt |d t t t f� � r+� j st j d� � ��fd�|D � � dfS �|� � dfS ) Nc � �� t | t t f� � r1t d� t �j j | � � D � � � � S | S )Nc 3 �. K � | ]\ }}|j |fV � �d S �N)�key)�.0�c�pvals �I/opt/cloudlinux/venv/lib64/python3.11/site-packages/sqlalchemy/sql/dml.py� <genexpr>zHUpdateBase._process_colparams.<locals>.process_single.<locals>.<genexpr>2 s, � � � �N�N�g�a��Q�U�D�M�N�N�N�N�N�N� )�
isinstance�list�tuple�dict�zip�tabler )�p�selfs �r! �process_singlez5UpdateBase._process_colparams.<locals>.process_single0 sI �� ��!�d�E�]�+�+�
��N�N��T�Z�\�1�9M�9M�N�N�N�N�N�N��r# � zOWhen preserve_parameter_order is True, values() only accepts a list of 2-tuplesc � � g | ]\ }}|��S r r )r r �values r! �
<listcomp>z1UpdateBase._process_colparams.<locals>.<listcomp>>