#postgresql #database-server #server #embedded

postgresql_commands

PostgreSQL commands for interacting with a PostgreSQL server

34 releases (10 breaking)

Uses new Rust 2024

0.18.3 Apr 3, 2025
0.18.2 Mar 21, 2025
0.18.1 Feb 26, 2025
0.17.3 Nov 12, 2024
0.14.2 Jul 17, 2024

#1179 in Database interfaces

Download history 592/week @ 2024-12-19 262/week @ 2024-12-26 873/week @ 2025-01-02 795/week @ 2025-01-09 947/week @ 2025-01-16 1215/week @ 2025-01-23 1252/week @ 2025-01-30 1342/week @ 2025-02-06 1476/week @ 2025-02-13 2248/week @ 2025-02-20 2359/week @ 2025-02-27 1858/week @ 2025-03-06 1471/week @ 2025-03-13 1705/week @ 2025-03-20 2051/week @ 2025-03-27 1882/week @ 2025-04-03

7,435 downloads per month
Used in 15 crates (3 directly)

(Apache-2.0 OR MIT) AND PostgreSQL

405KB
11K SLoC

PostgreSQL Commands

ci Documentation Code Coverage Latest version License Semantic Versioning

A library for executing PostgreSQL command line utilities.

Examples

use postgresql_commands::Result;
use postgresql_commands::psql::PsqlBuilder;

fn main() -> Result<()> {
    let psql = PsqlBuilder::new()
        .command("CREATE DATABASE \"test\"")
        .host("127.0.0.1")
        .port(5432)
        .username("postgresql")
        .pg_password("password")
        .build();

    let (stdout, stderr) = psql.execute()?;
    Ok(())
}

Feature flags

The following features are available:

Name Description Default?
tokio Enables the use of tokio commands No

Safety

This crate uses #![forbid(unsafe_code)] to ensure everything is implemented in 100% safe Rust.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~0.6–7MB
~46K SLoC