https://t.me/AnonymousX5
Server : Apache
System : Linux cvar2.toservers.com 3.10.0-962.3.2.lve1.5.73.el7.x86_64 #1 SMP Wed Aug 24 21:31:23 UTC 2022 x86_64
User : njnconst ( 1116)
PHP Version : 8.4.18
Disable Function : NONE
Directory :  /usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyc
�
���\c@s�dZddlZddlZddlmZddlmZddlmZddlmZddlmZdd	lm	Z	dd
lm
Z
ddlmZddlm
Z
d
dlmZd
dlmZd
dlmZd
dlmZd
dlmZyddlmZWnek
r+dZnXdejfd��YZdefd��YZde
fd��YZdefd��YZde	fd��YZdefd��YZ de
fd ��YZ!d!efd"��YZ"e"Z#dS(#s
.. dialect:: postgresql+pg8000
    :name: pg8000
    :dbapi: pg8000
    :connectstring: postgresql+pg8000://user:password@host:port/dbname[?key=value&key=value...]
    :url: https://pythonhosted.org/pg8000/


.. _pg8000_unicode:

Unicode
-------

pg8000 will encode / decode string values between it and the server using the
PostgreSQL ``client_encoding`` parameter; by default this is the value in
the ``postgresql.conf`` file, which often defaults to ``SQL_ASCII``.
Typically, this can be changed to ``utf-8``, as a more useful default::

    #client_encoding = sql_ascii # actually, defaults to database
                                 # encoding
    client_encoding = utf8

The ``client_encoding`` can be overridden for a session by executing the SQL:

SET CLIENT_ENCODING TO 'utf8';

SQLAlchemy will execute this SQL on all new connections based on the value
passed to :func:`.create_engine` using the ``client_encoding`` parameter::

    engine = create_engine(
        "postgresql+pg8000://user:pass@host/dbname", client_encoding='utf8')


.. _pg8000_isolation_level:

pg8000 Transaction Isolation Level
-------------------------------------

The pg8000 dialect offers the same isolation level settings as that
of the :ref:`psycopg2 <psycopg2_isolation_level>` dialect:

* ``READ COMMITTED``
* ``READ UNCOMMITTED``
* ``REPEATABLE READ``
* ``SERIALIZABLE``
* ``AUTOCOMMIT``

.. versionadded:: 0.9.5 support for AUTOCOMMIT isolation level when using
   pg8000.

.. seealso::

    :ref:`postgresql_isolation_level`

    :ref:`psycopg2_isolation_level`


i����Ni(t_DECIMAL_TYPES(t_FLOAT_TYPES(t
_INT_TYPES(t
PGCompiler(t	PGDialect(tPGExecutionContext(tPGIdentifierPreparer(tUUID(tJSONi(texc(t
processors(ttypes(tutil(tquoted_namet
_PGNumericcBseZd�ZRS(cCs�|jr]|tkr+tjtj|j�S|tksC|tkrGdSt
jd|��nB|tkrmdS|tks�|tkr�tjSt
jd|��dS(NsUnknown PG numeric type: %d(
t	asdecimalRR
tto_decimal_processor_factorytdecimaltDecimalt_effective_decimal_return_scaleRRtNoneR	tInvalidRequestErrortto_float(tselftdialecttcoltype((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytresult_processor[s	(t__name__t
__module__R(((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyRZst_PGNumericNoBindcBseZd�ZRS(cCsdS(N(R(RR((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytbind_processorus(RRR(((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyRtst_PGJSONcBseZd�ZRS(cCs0|jdkrdStt|�j||�SdS(Nii
(ii
i(t_dbapi_versionRtsuperRR(RRR((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyRzs(RRR(((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyRyst_PGUUIDcBseZd�Zd�ZRS(cCs|jsd�}|SdS(NcSs|dk	rt|�}n|S(N(Rt_python_UUID(tvalue((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytprocess�s(tas_uuid(RRR%((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR�s		cCs|jsd�}|SdS(NcSs|dk	rt|�}n|S(N(Rtstr(R$((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR%�s(R&(RRRR%((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR�s		(RRRR(((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR"�s	
tPGExecutionContext_pg8000cBseZRS((RR(((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR(�stPGCompiler_pg8000cBseZd�Zd�ZRS(cKs*|j|j|�d|j|j|�S(Ns %% (R%tlefttright(Rtbinarytoperatortkw((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytvisit_mod_binary�scCs,d|krtjd�n|jdd�S(Ns%%s^The SQLAlchemy postgresql dialect now automatically escapes '%' in text() expressions to '%%'.t%(Rtwarntreplace(Rttext((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytpost_process_text�s
(RRR/R4(((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR)�s	tPGIdentifierPreparer_pg8000cBseZd�ZRS(cCs(|j|j|j�}|jdd�S(NR0s%%(R2tescape_quotetescape_to_quote(RR$((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyt_escape_identifier�s(RRR8(((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR5�stPGDialect_pg8000cBseZdZeZeZdZeZeZ	e
ZeZ
dZejejieej6eej6ee6eej6ee6�Zdd�Zd�Zejd��Z e!d��Z"d�Z#d�Z$d	�Z%d
�Z&d�Z'd�Z(ee)d
�Z*ee)d�Z+d�Z,d�Z-RS(tpg8000tformattuse_encodingcKstj||�||_dS(N(Rt__init__tclient_encoding(RR>tkwargs((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR=�scCs,|jdk|_tt|�j|�dS(Nii	i(ii	i(R tsupports_sane_multi_rowcountR!R9t
initialize(Rt
connection((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyRA�scCsX|jrPt|jd�rPtgtjd|jj�D]}t|�^q7�SdSdS(Nt__version__s(\d+)(?:[-\.]?|$)ic(icicic(tdbapithasattrttupletretfindallRCtint(Rtx((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR �s)cCs
td�S(NR:(t
__import__(tcls((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyRD�scCsO|jdd�}d|kr5t|d�|d<n|j|j�g|fS(Ntusernametusertport(ttranslate_connect_argsRItupdatetquery(Rturltopts((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytcreate_connect_args�s
cCsdt|�kS(Nsconnection is closed(R'(RteRBtcursor((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyt
is_disconnect�scCs�|jdd�}t|d�r-|j}n|dkrEt|_nz||jkr�t|_|j�}|jd|�|jd�|j	�n+t
jd||jdj
|j�f��dS(	Nt_t RBt
AUTOCOMMITs=SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL %stCOMMITsZInvalid value '%s' for isolation_level. Valid isolation levels for %s are %s or AUTOCOMMITs, (R2RERBtTruet
autocommitt_isolation_lookuptFalseRWtexecutetcloseR	t
ArgumentErrortnametjoin(RRBtlevelRW((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytset_isolation_level�s 	

cCsWt|d�r|j}n|j�}|jd|d�|jd�|j�dS(NRBsSET CLIENT_ENCODING TO 't'R\(RERBRWRaRb(RRBR>RW((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytset_client_encoding	s
cCs|jjd|df�dS(Nit(RBt	tpc_begin(RRBtxid((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytdo_begin_twophasescCs|jj�dS(N(RBttpc_prepare(RRBRl((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytdo_prepare_twophasescCs|jjd|df�dS(NiRj(RBttpc_rollback(RRBRltis_preparedtrecover((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytdo_rollback_twophasescCs|jjd|df�dS(NiRj(RBt
tpc_commit(RRBRlRqRr((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytdo_commit_twophasescCs$g|jj�D]}|d^qS(Ni(RBttpc_recover(RRBtrow((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pytdo_recover_twophase#scs�g�d�}�j|��jdk	rJ�fd�}�j|�n�jdk	rx�fd�}�j|�nt��dkr��fd�}|SdSdS(NcSs|jtj|jt<dS(N(tpy_typesRt	text_typeR
(tconn((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyt
on_connect)scs�j|�j�dS(N(RiR>(R{(R(sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR|0scs�j|�j�dS(N(Rgtisolation_level(R{(R(sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR|7sicsx�D]}||�qWdS(N((R{tfn(tfns(sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR|>s
(tappendR>RR}tlen(RR|((RRsK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR|&s	
N(.RRtdriverR]tsupports_unicode_statementstsupports_unicode_bindstdefault_paramstyleR@R(texecution_ctx_clsR)tstatement_compilerR5tpreparertdescription_encodingRtupdate_copyRtcolspecsRtsqltypestNumericRtFloatRRR"RRR=RAtmemoized_propertyR tclassmethodRDRURXRgRiRmRoR`RsRuRxR|(((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyR9�s>



					
			($t__doc__RRGtbaseRRRRRRRRtjsonRRjR	R
RR�Rtsql.elementsR
tuuidR#tImportErrorRR�RRRR"R(R)R5R9R(((sK/usr/lib64/python2.7/site-packages/sqlalchemy/dialects/postgresql/pg8000.pyt<module>@s:

�

https://t.me/AnonymousX5 - 2025