File: //lib/python3/dist-packages/django/db/backends/oracle/__pycache__/operations.cpython-310.pyc
o
3�a�l � @ s� d dl Z d dlZd dlmZ d dlmZ d dlmZmZ d dl m
Z
d dlmZm
Z
d dlmZmZmZ d dlmZ d d lmZ d d
lmZ d dlmZmZ d dlmZ d d
lmZ ddlm Z ddl!m"Z"m#Z#m$Z$ G dd� de
�Z%dS )� N)� lru_cache)�settings)�
DatabaseError�NotSupportedError)�BaseDatabaseOperations)�strip_quotes�
truncate_name)� AutoField�Exists�ExpressionWrapper)�RawSQL)� WhereNode)�timezone)�force_bytes� force_str)�cached_property)�_lazy_re_compile� )�Database)�BulkInsertMapper� InsertVar�Oracle_datetimec
s2 e Zd Zdddddddddd� Zi ej�ddi�Zd Zd
Zddd
ed�Zdd� Z dd� Z
ddd�Zed�Z
dd� Zdd� Zdd� Zdd� Zdd � Zd!d"� Zdd#d$�Z� fd%d&�Zd'd(� Zd)d*� Zd+d,� Zd-d.� Zd/d0� Zd1d2� Zd3d4� Zed5d6� �Zed7d8� �Zd9d:� Z d;d<� Z!d=d>� Z"d?d@� Z#dAdB� Z$dCdD� Z%dEdF� Z&ddGdH�Z'dIdJ� Z(dKdL� Z)dMdN� Z*dOdP� Z+dQdR� Z,dSdT� Z-dUdV� Z.dWdX� Z/dYdZ� Z0e1d[d\� �Z2d]d]d^�d_d`�Z3dadb� Z4dcdd� Z5dedf� Z6d�dgdh�Z7didj� Z8dkdl� Z9dmdn� Z:d�dodp�Z;� fdqdr�Z<dsdt� Z=dudv� Z>dwdx� Z?� fdydz�Z@d{d|� ZAd}d~� ZB� ZCS )��DatabaseOperations)l�����g�] � �g�] )l������9V � ��9V )r r )r r )iay��i�� ) �SmallIntegerField�IntegerField�BigIntegerField�PositiveBigIntegerField�PositiveSmallIntegerField�PositiveIntegerField�SmallAutoFieldr �BigAutoField�
difference�MINUSa�
DECLARE
table_value integer;
seq_value integer;
seq_name user_tab_identity_cols.sequence_name%%TYPE;
BEGIN
BEGIN
SELECT sequence_name INTO seq_name FROM user_tab_identity_cols
WHERE table_name = '%(table_name)s' AND
column_name = '%(column_name)s';
EXCEPTION WHEN NO_DATA_FOUND THEN
seq_name := '%(no_autofield_sequence_name)s';
END;
SELECT NVL(MAX(%(column)s), 0) INTO table_value FROM %(table)s;
SELECT NVL(last_number - cache_size, 0) INTO seq_value FROM user_sequences
WHERE sequence_name = seq_name;
WHILE table_value > seq_value LOOP
EXECUTE IMMEDIATE 'SELECT "'||seq_name||'".nextval FROM DUAL'
INTO seq_value;
END LOOP;
END;
/zNVARCHAR2(2000)z
NUMBER(11)z
NUMBER(19)z NUMBER(5))r r"