以下适用于as
:
use postgres::{Client, NoTls, Error};
fn main() -> Result<(), Error> {
let mut client = Client::connect("postgresql://admin:quest@localhost:8812/qdb", NoTls)?;
// Basic query
client.batch_execute(
"CREATE TABLE IF NOT EXISTS rust (name STRING, value long);",
)?;
// Parameterized query
let name = "abc";
let uval: u64 = 9223372036854773000;
let val = uval as i64;
client.execute(
"INSERT INTO rust (name, value) VALUES ($1,$2)",
&[&name, &val],
)?;
println!("import finished");
Ok(())
}
请注意与i64
和的区别u64
如下:
i64
是 +/-9223372036854775808
u64
无符号整数是0
-18446744073709551615
QuestDB 中的数据类型long
是 64 位有符号 int ( i64
),因此如果您的值超过9223372036854775808
,则需要不同的处理。
编辑以获取更多信息,请参阅以下资源: