Sh3ll
OdayForums


Server : LiteSpeed
System : Linux premium84.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
User : claqxcrl ( 523)
PHP Version : 8.1.32
Disable Function : NONE
Directory :  /opt/hc_python/lib64/python3.12/site-packages/MySQLdb/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //opt/hc_python/lib64/python3.12/site-packages/MySQLdb/__pycache__/connections.cpython-312.pyc
�

���g[3���dZddlZddlmZmZddlmZmZmZm	Z	m
Z
mZmZm
Z
mZmZddddd	d
�Zej"d�Zd�ZGd
�dej(�Zy)a
This module implements connections for MySQLdb. Presently there is
only one class: Connection. Others are unlikely. However, you might
want to make your own subclasses. In most cases, you will probably
override Connection.default_cursor with a non-standard Cursor class.
�N�)�cursors�_mysql)
�Warning�Error�InterfaceError�	DataError�
DatabaseError�OperationalError�IntegrityError�
InternalError�NotSupportedError�ProgrammingError�utf8�cp1252�koi8_r�koi8_u)�utf8mb4�utf8mb3�latin1�koi8r�koi8uz^(\d+)c�f�tj|�}|rt|jd��Sy)z�Returns the leading numeric part of a string.

    >>> numeric_part("20-alpha")
    20
    >>> numeric_part("foo")
    >>> numeric_part("16b")
    16
    rN)�re_numeric_part�match�int�group)�s�ms  �D/opt/hc_python/lib64/python3.12/site-packages/MySQLdb/connections.py�numeric_partr!#s,��	���a� �A���1�7�7�1�:����c���eZdZdZej
Z�fd�Z		dd�Zd�Z	d�Z
d�Zdd�Zd�Z
d	�Zd
�Zd�Zd�Zd�fd
�	Zd�Zd�ZeZeZeZeZeZeZeZeZeZeZ�xZS)�
Connectionz MySQL Database Connection Objectc�t��ddlm}m}ddlm}m}|j
�}d|vr|jd�|d<d|vr|jd�|d<d|vr|d}n|}i}	|j�D]3\}
}t|
t�rt|t�r	|d	d	|	|
<�/||	|
<�5|	|d<|jd
|j�}|jdd�}
|jd
d�}|jdd�}|jdd�}|jdd�|_|jdd�}||jz}|jdd�}|r||j z}||d<|jdd�}|j"|i|��t%�|�L|i|��||_|j�D�
�cic]\}
}t+|
�tur|
|��c}}
|_t/|j1�j3d�d	dD�cgc]
}t5|���c}�|_d|_|
s|j;�}
|j=|
|�|r|j?|�|r�|j@|jB|jD|jF|jH|jJ|jLfD]}||jN|<�tP|jN|jR<|jT|jVz|_,|jXr|�|j[|�g|_.y	cc}}
wcc}w)aZ
        Create a connection to the database. It is strongly recommended
        that you only use keyword parameters. Consult the MySQL C API
        documentation for more information.

        :param str host:        host to connect
        :param str user:        user to connect as
        :param str password:    password to use
        :param str passwd:      alias of password (deprecated)
        :param str database:    database to use
        :param str db:          alias of database (deprecated)
        :param int port:        TCP/IP port to connect to
        :param str unix_socket: location of unix_socket to use
        :param dict conv:       conversion dictionary, see MySQLdb.converters
        :param int connect_timeout:
            number of seconds to wait before the connection attempt fails.

        :param bool compress:   if set, compression is enabled
        :param str named_pipe:  if set, a named pipe is used to connect (Windows only)
        :param str init_command:
            command which is run once the connection is created

        :param str read_default_file:
            file from which default client values are read

        :param str read_default_group:
            configuration group to use from the default file

        :param type cursorclass:
            class object, used to create cursors (keyword only)

        :param bool use_unicode:
            If True, text-like columns are returned as unicode objects
            using the connection's character set. Otherwise, text-like
            columns are returned as bytes. Unicode objects will always
            be encoded to the connection's character set regardless of
            this setting.
            Default to True.

        :param str charset:
            If supplied, the connection character set will be changed
            to this character set.

        :param str collation:
            If ``charset`` and ``collation`` are both supplied, the
            character set and collation for the current connection
            will be set.

            If omitted, empty string, or None, the default collation
            for the ``charset`` is implied.

        :param str auth_plugin:
            If supplied, the connection default authentication plugin will be
            changed to this value. Example values:
            `mysql_native_password` or `caching_sha2_password`

        :param str sql_mode:
            If supplied, the session SQL mode will be changed to this
            setting.
            For more details and legal values, see the MySQL documentation.

        :param int client_flag:
            flags to use or 0 (see MySQL docs or constants/CLIENTS.py)

        :param bool multi_statements:
            If True, enable multi statements for clients >= 4.1.
            Defaults to True.

        :param str ssl_mode:
            specify the security settings for connection to the server;
            see the MySQL documentation for more details
            (mysql_option(), MYSQL_OPT_SSL_MODE).
            Only one of 'DISABLED', 'PREFERRED', 'REQUIRED',
            'VERIFY_CA', 'VERIFY_IDENTITY' can be specified.

        :param dict ssl:
            dictionary or mapping contains SSL connection parameters;
            see the MySQL documentation for more details
            (mysql_ssl_set()).  If this is set, and the client does not
            support SSL, NotSupportedError will be raised.
            Since mysqlclient 2.2.4, ssl=True is alias of ssl_mode=REQUIRED
            for better compatibility with PyMySQL and MariaDB.

        :param str server_public_key_path:
            specify the path to a file RSA public key file for caching_sha2_password.
            See https://dev.mysql.com/doc/refman/9.0/en/caching-sha2-pluggable-authentication.html

        :param bool local_infile:
            enables LOAD LOCAL INFILE; zero disables

        :param bool autocommit:
            If False (default), autocommit is disabled.
            If True, autocommit is enabled.
            If None, autocommit isn't set and server default is used.

        :param bool binary_prefix:
            If set, the '_binary' prefix will be used for raw byte query
            arguments (e.g. Binary). This is disabled by default.

        There are a number of undocumented, non-standard methods. See the
        documentation for the MySQL C API for some hints on what they do.
        r)�CLIENT�
FIELD_TYPE)�conversions�
_bytes_or_str�db�database�passwd�password�convN�cursorclass�charset��	collation�use_unicodeT�sql_mode�
binary_prefixF�client_flag�multi_statements�
autocommit�.��ascii)/�MySQLdb.constantsr&r'�MySQLdb.convertersr(r)�copy�pop�items�
isinstancer�list�default_cursor�get�_binary_prefix�
MULTI_RESULTS�MULTI_STATEMENTS�_set_attributes�super�__init__r/�type�encoders�tuple�get_server_info�splitr!�_server_version�encoding�character_set_name�set_character_set�set_sql_mode�STRING�
VAR_STRING�VARCHAR�	TINY_BLOB�MEDIUM_BLOB�	LONG_BLOB�BLOB�	converter�str�JSON�server_capabilities�TRANSACTIONS�_transactionalr8�messages)�self�args�kwargsr&r'r(r)�kwargs2r.�conv2�k�vr/r0r2r3r4r6r7r8�n�t�	__class__s                      �r rJzConnection.__init__8s���N	9�A��+�+�-���7�?�")�+�+�d�"3�G�J���w��")�+�+�h�"7�G�J���V���&�>�D��D����J�J�L�D�A�q��!�S�!�j��D�&9��Q�4��a����a��	!�
 �����k�k�-��1D�1D�E���+�+�i��,���K�K��R�0�	��k�k�-��6���;�;�z�2�.��%�k�k�/�5�A����j�j���2���v�+�+�+��"�;�;�'9�4�@����6�2�2�2�K�!,��
���[�[��u�5�
�����d�.�g�.�
���$�*�'�*�&����
�
��
�$���1��A�w�c�!�
�q�D�$�
��
�
 %�&*�&:�&:�&<�&B�&B�3�&G���&K�L�&K��\�!�_�&K�L� 
��� ��
���-�-�/�G����w�	�2�����h�'���!�!��%�%��"�"��$�$��&�&��$�$������%2����q�!��/2�D�N�N�:�?�?�+�"�6�6��9L�9L�L�������%����
�+���
��I
��
Ms�<L/�L5c�H�|r|sd}||_||_||_||_y)zset some attributes for otel�	localhostN)�host�userr+r*)rcrorpr-r+�port�unix_socketres        r rHzConnection._set_attributes�s*���t��D���	���	� ��
���r"c��|S�N��rcs r �	__enter__zConnection.__enter__s���r"c�$�|j�yrt)�close)rc�exc_type�	exc_value�	tracebacks    r �__exit__zConnection.__exit__s���
�
�r"c��t|�}|j�|k7r!tjj	||�yyrt)�bool�get_autocommitr�
connectionr8)rc�ons  r r8zConnection.autocommits7��
�"�X����� �B�&����(�(��r�2�'r"c�.�|xs|j|�S)z�
        Create a cursor on which queries may be performed. The
        optional cursorclass parameter is used to create the
        Cursor. By default, self.cursorclass=cursors.Cursor is
        used.
        )r/)rcr/s  r �cursorzConnection.cursors��0��/�t�/�/��6�6r"c�z�t|t�rt|�}tjj||�yrt)rA�	bytearray�bytesrr��query)rcr�s  r r�zConnection.querys+���e�Y�'��%�L�E�������e�,r"c�z�t|ttf�sJ�|j|�}|jrd|zS|S)Ns_binary)rAr�r��string_literalrE)rc�bs�xs   r �_bytes_literalzConnection._bytes_literals?���"�u�i�0�1�1�1�����#�������>�!��r"c�R�ddjt|j|��zS)Ns(%s)�,)�join�map�literal)rcrks  r �_tuple_literalzConnection._tuple_literal!s!���$�)�)�C����a�$8�9�:�:r"c��t|t�r+|j|j|j��}n�t|t
�r|j
|�}n�t|t�r|j
|�}not|ttf�r|j|�}nG|j||j�}t|t�r|j|j�}t|t�sJ�|S)aIf o is a single object, returns an SQL literal as a string.
        If o is a non-string sequence, the items of the sequence are
        converted and returned as a sequence.

        Non-standard. For internal use; do not use this in your
        applications.
        )
rAr]r��encoderQr�r�r�rMrBr��escaperL)rc�ors   r r�zConnection.literal$s����a����#�#�A�H�H�T�]�]�$;�<�A�
��9�
%��#�#�A�&�A�
��5�
!��#�#�A�&�A�
��E�4�=�
)��#�#�A�&�A����A�t�}�}�-�A��!�S�!��H�H�T�]�]�+���!�U�#�#�#��r"c�&�|jd�y)ziExplicitly begin a connection.

        This method is not used when autocommit=False (default).
        sBEGINN)r�rvs r �beginzConnection.begin;s��
	
�
�
�8�r"c���t�|�|�tj||�|_|r(|jd|�d|���|j
�yy)z,Set the connection character set to charset.z
SET NAMES z	 COLLATE N)rIrS�_charset_to_encodingrDrQr��store_result)rcr0r2rls   �r rSzConnection.set_character_setBsQ���
��!�'�*�,�0�0��'�B��
���J�J��G�9�I�i�[�A�B�����r"c��|jdkrtd��|jd|z�|j�y)zNSet the connection sql_mode. See MySQL documentation for
        legal values.��rz!server is too old to set sql_modezSET SESSION sql_mode='%s'N)rPrr�r�)rcr4s  r rTzConnection.set_sql_modeJs<�����&�(�#�$G�H�H��
�
�.��9�:����r"c��|jdkry|jd�|j�}|jd�}|S)z�Return detailed information about warnings as a
        sequence of tuples of (Level, Code, Message). This
        is only supported in MySQL-4.1 and up. If your server
        is an earlier version, an empty sequence is returned.r�ruz
SHOW WARNINGSr)rPr�r��	fetch_row)rc�r�warningss   r �
show_warningszConnection.show_warningsRsA��
���&�(���
�
�?�#�������;�;�q�>���r")NNNr1i�Nrt) �__name__�
__module__�__qualname__�__doc__r�CursorrCrJrHrwr}r8r�r�r�r�r�r�rSrTr�rrrr
r	rrr
rr�
__classcell__)rls@r r$r$3s����*��^�^�N�w�rVZ�$(����3�
7�-��;��.� ��
��G��E�#�N�!�M��I�'��#�N�!�M�'��)�r"r$)r��rer1rr�_exceptionsrrrr	r
rrr
rrr��compilerr!r�r$rur"r �<module>r�se���
��������
�
����"�*�*�Y�'��
� t*��"�"�t*r"

ZeroDay Forums Mini