sql >> データベース >  >> RDS >> PostgreSQL

RustのPostgreSQLからタイムゾーン(timestamptz)値のタイムスタンプを読み取るにはどうすればよいですか?

    利用可能な機能を確認したらwith-chrono-0_4を使用する必要があることを確認するのはかなり直接的なことです。 機能。

    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. MySQL構成:ハイフンを使用する場合とアンダースコアを使用する場合

    2. パスワードリセット後、ユーザー'root' @'localhost'(パスワードを使用:はい)のアクセスが拒否されましたLINUX

    3. 警告:mysql_query():3は有効なMySQL-Linkリソースではありません

    4. 2つの列値を使用してクエリを実行し、範囲を作成します