Java 插入“;日期范围“;通过JDBC将字段值导入PostgreSQL表

Java 插入“;日期范围“;通过JDBC将字段值导入PostgreSQL表,java,database,postgresql,jdbc,date-range,Java,Database,Postgresql,Jdbc,Date Range,我在PostgreSQL(9.3)中有一个字段类型的表 我可以用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(); 我得到: Ex

我在PostgreSQL(9.3)中有一个字段类型的表

我可以用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驱动程序没有daterange支持。。。 也许还有第三种解决办法

多谢各位

附言

我的PostgreSQL JDBC驱动程序:

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

postgresql
postgresql
8.4-701.jdbc4
使用:

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