小编Seb*_*and的帖子

如何使用 postgres crate 将表名作为变量传递给execute()?

我是 Rust 新手,我正在尝试使用 postgres 板条箱。我能够通过对表名称进行硬编码来创建表,但在尝试从变量传递表名称时,代码总是会出现恐慌。

rustc --version 1.36.0
cargo --version 1.36.0
postgres = "0.15"
Run Code Online (Sandbox Code Playgroud)
fn main() {
  let conn = Connection::connect("postgresql://postgres:postgres@localhost/db1",
                                    TlsMode::None).unwrap();

  let tname = "message";
  conn.execute("CREATE TABLE IF NOT EXISTS $1 (
                    id              SERIAL PRIMARY KEY,
                    title           VARCHAR NOT NULL,
                    body            VARCHAR,
                )", &[&tname]).ok().expect("Table message creation failed");
Run Code Online (Sandbox Code Playgroud)
fn main() {
  let conn = Connection::connect("postgresql://postgres:postgres@localhost/db1",
                                    TlsMode::None).unwrap();

  let tname = "message";
  conn.execute("CREATE TABLE IF NOT EXISTS $1 (
                    id              SERIAL PRIMARY KEY,
                    title           VARCHAR NOT NULL,
                    body            VARCHAR,
                )", &[&tname]).ok().expect("Table message …
Run Code Online (Sandbox Code Playgroud)

postgresql rust

3
推荐指数
1
解决办法
1135
查看次数

标签 统计

postgresql ×1

rust ×1