Your IP : 3.142.36.215
3
\ � @ s d d� Z dS )c
c s | j � }dV d}|j|�}x�|j� D ]�\}}}|dkr@dV n*|dkrPdV n|jd�r^q&ndj|�V |jd d
�}|jdj|��}dd
� |j� D �} dj|djdd� | D ���}|j|�}
x|
D ]}dj|d �V q�W q&W d}|j|�}x"|j� D ]\}}}dj|�V q�W dV dS )a/
Returns an iterator to the dump of the database in an SQL text format.
Used to produce an SQL dump of the database. Useful to save an in-memory
database for later restoration. This function should not be called
directly but instead called from the Connection method, iterdump().
zBEGIN TRANSACTION;z�
SELECT "name", "type", "sql"
FROM "sqlite_master"
WHERE "sql" NOT NULL AND
"type" == 'table'
ORDER BY "name"
Zsqlite_sequencezDELETE FROM "sqlite_sequence";Zsqlite_stat1zANALYZE "sqlite_master";Zsqlite_z{0};�"z""zPRAGMA table_info("{0}")c S s g | ]}t |d ��qS )� )�str)�.0Z
table_info� r �$/usr/lib64/python3.6/sqlite3/dump.py�
<listcomp>3 s z_iterdump.<locals>.<listcomp>z2SELECT 'INSERT INTO "{0}" VALUES({1})' FROM "{0}";�,c s s | ]}d j |jdd��V qdS )z'||quote("{0}")||'r z""N)�format�replace)r �colr r r � <genexpr>6 s z_iterdump.<locals>.<genexpr>� z�
SELECT "name", "type", "sql"
FROM "sqlite_master"
WHERE "sql" NOT NULL AND
"type" IN ('index', 'trigger', 'view')
zCOMMIT;N)ZcursorZexecuteZfetchall�
startswithr r
�join)
Z
connectionZcu�qZ
schema_resZ
table_name�typeZsqlZtable_name_ident�resZcolumn_namesZ query_res�row�namer r r � _iterdump
s4
r N)r r r r r �<module>
s