【发布时间】:2019-09-30 19:43:23
【问题描述】:
我有一个实体“Show”,它有一个名为“start”的 LocalDateTime 变量:
public class Show {
//--other code---
@Column(nullable = false)
private LocalDateTime start;
//--other code---
}
我只想根据年、月和日从我的数据库中进行选择,而忽略小时和分钟。
我目前的查询是:
@Query(value = "SELECT * FROM show s WHERE s.event_id = :eventId
AND DATEPART(year, s.start) = DATEPART(year, :dateSearch)
AND DATEPART(month, s.start) = DATEPART(month, :dateSearch)
AND DATEPART(day, s.start) = DATEPART(day, :dateSearch)", nativeQuery = true)
Page<Show> findAllFiltered(@Param("eventId") Long eventId, @Param("dateSearch") LocalDateTime dateSearch, Pageable page);
当我尝试执行该查询时,我收到一个 500 错误代码,并显示以下消息:
“无法准备语句;嵌套异常是 org.hibernate.exception.GenericJDBCException: 无法准备语句”
编辑:使代码块中的查询更易于阅读
【问题讨论】:
-
异常的原始“原因”是什么,即真正的错误?
标签: java sql sql-server jpa spring-data-jpa