Your IP : 52.14.148.63


Current Path : /opt/alt/python312/lib64/python3.12/sqlite3/__pycache__/
Upload File :
Current File : //opt/alt/python312/lib64/python3.12/sqlite3/__pycache__/__main__.cpython-312.opt-1.pyc

�

�Q�f���dZddlZddlZddlmZddlmZddlmZdd�Z	Gd�de�Z
d	�Zed
k(reejdd�yy)
z�A simple SQLite CLI for the sqlite3 module.

Apart from using 'argparse' for the command-line interface,
this module implements the REPL as a thin wrapper around
the InteractiveConsole class from the 'code' stdlib module.
�N)�ArgumentParser)�InteractiveConsole)�dedentc��	|j|�D]
}t|��y#tj$r�}t	|�j
}	t|�d|j�d|��tj��n/#t$r#t|�d|��tj��YnwxYw|stjd�Yd}~yYd}~yd}~wwxYw)z�Helper that wraps execution of SQL code.

    This is used both by the REPL and by direct execution from the CLI.

    'c' may be a cursor or a connection.
    'sql' is the SQL string to execute.
    z (z): )�filez: �N)�execute�print�sqlite3�Error�type�__name__�sqlite_errorname�sys�stderr�AttributeError�exit)�c�sql�suppress_errors�row�e�tps      �7/opt/alt/python312/lib64/python3.12/sqlite3/__main__.pyr	r	s���
��9�9�S�>�C��#�J�"���=�=��
�!�W�
�
��	1��R�D��1�-�-�.�c�!��5�C�J�J�G���	1��R�D��1�#�,�S�Z�Z�0�	1����H�H�Q�K�K���
�s8�!$�C�C�
-A;�:C�;)B'�$C�&B'�'C�Cc�*��eZdZdZ�fd�Zdd�Z�xZS)�SqliteInteractiveConsolezA simple SQLite REPL.c�Z��t�|��||_|j�|_y)N)�super�__init__�_con�cursor�_cur)�self�
connection�	__class__s  �rrz!SqliteInteractiveConsole.__init__(s%���
������	��%�%�'��	�c��|xdk(rttj��yxdk(r
td�ydk(rtjd�y	tj
|�syt
|j|�y)z�Override runsource, the core of the InteractiveConsole REPL.

        Return True if more input is needed; buffering is done automatically.
        Return False is input is a complete statement ready for execution.
        z.versionz.helpzEnter SQL code and press enter.z.quitrTF)r
r�sqlite_versionrr�complete_statementr	r")r#�source�filename�symbols    r�	runsourcez"SqliteInteractiveConsole.runsource-so������/�/�0�2����7�8��
������
�	��1�1�&�9����	�	�6�*�r&)z<input>�single)r�
__module__�__qualname__�__doc__rr-�
__classcell__)r%s@rrr%s����(�
r&rc	�^�tdd��}|jdtddd��|jd	tdd
��|jdd
ddtj��d��|j
|�}|jdk(rd}nt|j�}tjdk(rdtjvrd}nd}tdtj�d|�d|�d��j�}dt_
dt_tj|jd��}	|j rt#||j d��nt%|�}|j'|d �!�|j)�tj*d"�y#|j)�wxYw)#NzPython sqlite3 CLIzpython -m sqlite3)�description�progr+z:memory:�?zrSQLite database to open (defaults to ':memory:'). A new database is created if the file does not previously exist.)r
�default�nargs�helprzAAn SQL query to execute. Any returned rows are printed to stdout.)r
r8r9z-vz	--version�versionzSQLite version z'Print underlying SQLite library version)�actionr:r9za transient in-memory database�win32zidlelib.runzCTRL-ZzCTRL-Dz2
        sqlite3 shell, running on SQLite version z
        Connected to z}

        Each command will be run using execute() on the cursor.
        Type ".help" for more information; type ".quit" or z to quit.
    zsqlite> z    ... )�isolation_levelF)r�)�exitmsgr)r�add_argument�strrr(�
parse_argsr+�reprr�platform�modulesr�strip�ps1�ps2�connectrr	r�interact�closer)�args�parser�db_name�eofkey�banner�con�consoles       r�mainrSAs���
�(�
 ��F������j��
O������
�C�s�
7�������k�)�!�'�"8�"8�!9�:�
6���
�6���d�#�D��}�}�
�"�2���t�}�}�%���|�|�w��=����#C�����
�2�29�2H�2H�1I�J��Y�<�=C�8�D��	�
���
��C�G��C�G�
�/�/�$�-�-��
>�C�	��8�8��C����5�9�/�s�3�G����V�R��0��	�	���H�H�Q�K��	�	�	��s
�1AF�F,�__main__r)T)r1rr�argparser�coder�textwraprr	rrSr�argv�r&r�<module>rZsT����
�#�#���,�1��8:�z�z������!�"���r&

?>