Skip to content

Latest commit

 

History

History
39 lines (27 loc) · 1.31 KB

README.rst

File metadata and controls

39 lines (27 loc) · 1.31 KB

sqlalchemy-postgres-copy

Latest version Travis-CI

sqlalchemy-postgres-copy is a utility library that wraps the PostgreSQL COPY command for use with SQLAlchemy. The COPY command offers performant exports from PostgreSQL to TSV, CSV, or binary files, as well as imports from files to PostgresSQL tables. Using COPY is typically much more efficient than importing and exporting data using Python.

Installation

pip install -U sqlalchemy-postgres-copy

Usage

import postgres_copy
from models import Album, session, engine

# Export a CSV containing all Queen albums
query = session.query(Album).filter_by(artist='Queen')
with open('/path/to/file.csv', 'w') as fp:
    postgres_copy.copy_to(query, fp, engine, format='csv', header=True)

# Import a tab-delimited file
with open('/path/to/file.tsv') as fp:
    postgres_copy.copy_from(fp, Album, engine)