gpt4 book ai didi

java - 通过JDBC向PostgreSQL表中插入 "daterange"字段值

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:05:54 25 4
gpt4 key购买 nike

我在 PostgreSQL(9.3) 中有一张表 daterange字段类型。

我可以像使用 JDBC 的字符串一样选择这个字段,但我不能将它插入到表中。

我尝试过的:

PreparedStatement stm = conn.prepareStatement("insert into mytable (my_daterange_field) values (?)"); 
stm.setString(1, "[2014-01-02,2014-01-04]");
int i = stm.executeUpdate();

我得到了:

Exception in thread "main" org.postgresql.util.PSQLException: ERROR: column "my_daterange_field" is of type daterange but expression is of type character varying
Hint: You will need to rewrite or cast the expression.
Position: 168

有没有人有插入日期范围的解决方案?我应该使用什么 stm.setXXX?或者我不能这样做,因为 JDBC 驱动程序不支持日期范围......也许还有第三种解决方案?

谢谢。

附言

我的 PostgreSQL JDBC 驱动程序:

    <dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>8.4-701.jdbc4</version>
</dependency>

最佳答案

使用:

insert into mytable (my_daterange_field) values (?::daterange)

关于java - 通过JDBC向PostgreSQL表中插入 "daterange"字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22218268/

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