gpt4 book ai didi

java - 使用 TIMESTAMP 数据类型创建准备绑定(bind)插入语句

转载 作者:行者123 更新时间:2023-11-30 05:29:30 25 4
gpt4 key购买 nike

我正在尝试使用准备绑定(bind)语句插入一些行。其中一列的类型为TIMESTAMP。如何将此列的变量与当前纪元时间绑定(bind)?

我有下表:

CREATE TABLE orders {
user_id TEXT,
order_time TIMESTAMP,
order_id UUID DEFAULT gen_random_uuid(),
order_details TEXT,
PRIMARY KEY (user_id, order_time DESC, order_id),
FOREIGN KEY (user_id) REFERENCES %s (user_id)
);

我有以下准备语句代码:

String stmt = "INSERT INTO orders " +
"(user_id, order_time, order_details) " +
"VALUES (?, ?, ?);"
PreparedStatement p = connection.prepareStatement(stmt);

现在我尝试将当前纪元时间 System.currentTimeMillis() 绑定(bind)到此语句中的变量 2。我该怎么做?

最佳答案

与 SQL 的 TIMESTAMP 对应的 Java 类型很可能是 java.sql.Timestamp。您可以使用以下方法生成当前时间戳:

Timestamp timestamp = new Timestamp(System.currentTimeMillis());

因此,您准备好的语句代码可能如下所示:

String stmt = "INSERT INTO orders " +
"(user_id, order_time, order_details) " +
"VALUES (?, ?, ?);"
PreparedStatement p = connection.prepareStatement(stmt);
p.setString(1, "Karthik");
p.setTimestamp(2, new Timestamp(System.currentTimeMillis()));
p.setString(3, "here is some order text");

关于java - 使用 TIMESTAMP 数据类型创建准备绑定(bind)插入语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57864576/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com