Spring JdbcTemplate 设置时间间隔小时
Spring JdbcTemplate Set Time Interval Hour
嗨,你能帮我解决这个问题吗?
jdbcTemplate.update("update training.link_validity set start_time=now() , end_time=(NOW() + INTERVAL ?) where id=1", 新对象[] { 6 });
它在 PgAdmin 中工作正常,但在这里抛出错误。
错误:
原因:org.postgresql.util.PSQLException:无法推断 SQL 类型用于 [Ljava.lang.Object; 的实例。使用带有显式类型值的 setObject() 来指定要使用的类型。
在 org.postgresql.jdbc2.AbstractJdbc2Statement.setObject(AbstractJdbc2Statement.java:2142)
您在描述中的陈述与屏幕截图中的陈述不符,但无论如何:
您可以 set (and play with) the explicit SQLTypes
在 JDBCTemplate 中。所以试试这个(如果你想放弃显式数组创建)
jdbcTemplate.update("update training.link_validity set start_time=now() , end_time=(NOW() + INTERVAL ? HOUR) where id=1", "6" , java.sql.Types.VARCHAR);
(我假设 interval ? 参数是一个字符串文字,但如果它是一个数字,只需相应地更改类型)
jdbcTemplate.update("update training.link_validity set start_time=now() , end_time=(NOW() + INTERVAL ?) where id=1", 新对象[] { 6 });
它在 PgAdmin 中工作正常,但在这里抛出错误。
错误: 原因:org.postgresql.util.PSQLException:无法推断 SQL 类型用于 [Ljava.lang.Object; 的实例。使用带有显式类型值的 setObject() 来指定要使用的类型。 在 org.postgresql.jdbc2.AbstractJdbc2Statement.setObject(AbstractJdbc2Statement.java:2142)
您在描述中的陈述与屏幕截图中的陈述不符,但无论如何:
您可以 set (and play with) the explicit SQLTypes
在 JDBCTemplate 中。所以试试这个(如果你想放弃显式数组创建)
jdbcTemplate.update("update training.link_validity set start_time=now() , end_time=(NOW() + INTERVAL ? HOUR) where id=1", "6" , java.sql.Types.VARCHAR);
(我假设 interval ? 参数是一个字符串文字,但如果它是一个数字,只需相应地更改类型)