sql >> Database >  >> RDS >> PostgreSQL

Hoe kan ik een tijdstempel met tijdzone (timestamptz) waarde uit PostgreSQL in Rust lezen?

Zodra je weet welke functies beschikbaar zijn , is het redelijk direct om te zien dat je de with-chrono-0_4 moet gebruiken functie.

use chrono::{DateTime, Utc}; // 0.4.10
use postgres::{Client, Error, NoTls}; // 0.17.0, features = ["with-chrono-0_4"]

pub fn main() -> Result<(), Error> {
    let mut client = Client::connect("host=localhost user=stack-overflow", NoTls)?;

    client.simple_query(
        r#"
        CREATE TABLE mytable (
            name        text NOT NULL,
            timestamp   timestamptz NOT NULL
        )"#,
    )?;

    client.execute("INSERT INTO mytable VALUES ('bob', now());", &[])?;

    for row in client.query("SELECT * FROM mytable", &[])? {
        let name: &str = row.get(0);
        let timestamp: DateTime<Utc> = row.get(1);
        dbg!(name, timestamp);
    }

    Ok(())
}
[src/main.rs:20] name = "bob"
[src/main.rs:20] timestamp = 2020-01-16T01:21:58.755804Z


  1. Voeg meerdere gegevens toe aan MySQL en update indien aanwezig

  2. Met behulp van SQL Server opgeslagen procedures van Python (pyodbc)

  3. SQL-query:een item verwijderen dat niet in een join-tabel staat?

  4. Eerste en laatste waarde aggregatiefuncties in postgresql die correct werken met NULL-waarden