[英]Insert “daterange” field value into PostgreSQL table through JDBC
我在PostgreSQL(9.3)中有一個帶有daterange字段類型的表。
我可以像使用JDBC的String一樣選擇此字段,但我無法將其插入表中。
我嘗試過的:
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 Driver沒有日期范圍的支持......也許有第三種解決方案?
謝謝。
PS
我的PostgreSQL JDBC驅動程序:
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>8.4-701.jdbc4</version>
</dependency>
采用:
insert into mytable (my_daterange_field) values (?::daterange)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.