File manager - Edit - /usr/local/CyberCP/lib/python3.10/site-packages/django/db/backends/sqlite3/__pycache__/operations.cpython-310.pyc
Back
o �hAB � @ s� d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZ d dl m Z d dlmZm Z mZ d dlmZ d dlmZ d d lmZ d d lmZ d dlmZmZmZ d dlmZ G d d� de�ZdS )� N)� lru_cache)�chain)�settings)� FieldError)� DatabaseError�NotSupportedError�models)�BaseDatabaseOperations)� OnConflict)�Col)�timezone)� parse_date�parse_datetime� parse_time)�cached_propertyc s� e Zd ZdZddd�ZdZeg d��Zdd� Zdd � Z d d� Z dd � Zdd� ZdWdd�Z dWdd�Zdd� Zdd� Zdd� Zdd� Zdd� Zdd � Zd!d"� Zd#d$� Zd%d&� Zd'd(� Zd)d*� Zd+d,� Zed-d.� �Zd/d/d0�d1d2�Zd3d4� Zd5d6� Zd7d8� Z � fd9d:�Z!d;d<� Z"d=d>� Z#d?d@� Z$dAdB� Z%dCdD� Z&dEdF� Z'dGdH� Z(� fdIdJ�Z)dKdL� Z*dMdN� Z+dOdP� Z,dW� fdQdR� Z-dSdT� Z.� fdUdV�Z/� Z0S )X�DatabaseOperations�text�TEXT)� DateField� DateTimeFieldzEXPLAIN QUERY PLAN)�null�false�truec C s6 t |�dkrdS t |�dkr| jjjt |� S t |�S )z� SQLite has a compile-time default (SQLITE_LIMIT_VARIABLE_NUMBER) of 999 variables per query. If there's only a single field to insert, the limit is 500 (SQLITE_MAX_COMPOUND_SELECT). � i� )�len� connection�features�max_query_params)�self�fields�objs� r! �X/usr/local/CyberCP/lib/python3.10/site-packages/django/db/backends/sqlite3/operations.py�bulk_batch_size s z"DatabaseOperations.bulk_batch_sizec C s� t jt jt jf}t jt jt jt jf}t||�r8|� � D ]}z|j }W n ttfy- Y qw t||�r7t d��qt|t j�rL|jrNt|j�dkrPt d��d S d S d S )Nz{You cannot use Sum, Avg, StdDev, and Variance aggregations on date/time fields in sqlite3 since date/time is saved as text.r zTSQLite doesn't support DISTINCT on aggregate functions accepting multiple arguments.)r r r � TimeField�Sum�Avg�Variance�StdDev� isinstance�get_source_expressions�output_field�AttributeErrorr r � Aggregate�distinctr �source_expressions)r � expression� bad_fields�bad_aggregates�exprr+ r! r! r"