Skip to main content

Heave

Heave is a CLI tool for batch inserting or updating data into a database.

Installation

It is recommended to install heave using uv:

uv tool install heave

Usage

heave [OPTIONS] COMMAND [ARGS]...

Create a connection to a PostgreSQL database.

Defaults to the postgres database on localhost with the postgres user. Pass alternate connection parameters as options. You can save yourself some typing by setting the environment variables PGDATABASE, PGHOST, PGPORT and/or PGUSER to appropriate values. It is also convenient to have a .pgpass file to avoid regularly having to type in passwords.

Options

-h, --host TEXT (default: localhost)

  • Host name of the database.

-p, --port INTEGER (default: 5432)

  • Port number at which the database is listening.

-U, --username TEXT

  • Username to connect as.

-d, --dbname TEXT (default: postgres)

  • Name of the database to connect to.

Examples

heave --host myhost --port 5433 --username myuser --dbname mydb

heave insert

heave insert --table TEXT <file>

Insert data from a file into a table.

Options

-t, --table TEXT

  • Name of the table to insert into. Required.

-oc, --on-conflict TEXT

  • How to handle insert conflicts. [nothing|update]

Examples

heave insert --table mytable data.csv

heave read

heave read --table TEXT <file>

Read data from an SQL table and write it to a file.

Options

-t, --table TEXT

  • Name of the table to read from. Required.

Examples

heave read --table mytable data.csv

Supported Formats

Currently, Heave only supports extracting data from CSV files and loading it into a PostgreSQL database.

Sources

Supported data sources include:

  • CSV files: .csv

Databases

Supported target databases include:

  • PostgreSQL

Examples

...

Contributing

Contributions are welcome! Pick an existing issue or create a new one. Then follow the steps in CONTRIBUTING.md to make your change.`

Metadata

Release files for heave 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for heave 0.4.0
File Size Uploaded
heave-0.4.0.tar.gz 55.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for heave 0.4.0
File Interpreter ABI Platform
heave-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 61.0 kB

Release files / heave-0.4.0.tar.gz

Download URL heave-0.4.0.tar.gz
Size 55.1 kB
Tags Source
SHA-256 checksum
How to use checksums
7c0e4e964e1faee6686966288566548f6ae3fd5766efe1b52a97133cd2c2fa88
BLAKE2b-256 checksum
How to use checksums
9a315deed00019a4d5d9f50bd24a8ab16d197632e5a2fc166fe37478a012c623
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / heave-0.4.0-py3-none-any.whl

Download URL heave-0.4.0-py3-none-any.whl
Size 5.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4ebc238244b1aa52235d80d061f268a08e0e1c82f87461f4457685de3fbef6f7
BLAKE2b-256 checksum
How to use checksums
d7d5198f0f2543b9a5eec6e26f565b415cb0ed7786a34deba645b32a61706ce6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page