Spring 编写数据库独立查询
Spring write Database undependend queries
我的 spring 应用程序遇到了一个小问题。
我正在使用这样的存储库:
public interface TripRepository extends CrudRepository<TripEntity, Long>, Serializable {
@Query("SELECT vt FROM TripEntity vt WHERE vt.opdDate "
+ " = TO_DATE(:operatingDay, 'DD.MM.YYYY') AND vt.lineId IN :lineIds")
public List<TripEntity> findByDateAndLine(@Param("operatingDay") String operatingDay,
@Param("lineIds") Collection<Long> lineIds);
我的问题是 to_date
函数。在生产中,我正在使用 Oracle,一切都很好。但是为了开发,我想使用 mysql 数据库。
是否可以编写独立于数据库的查询?或者写两个查询,但使用它们依赖于驱动程序。
如果有人能帮助我,我会很高兴。
提前致谢
我不确定 jpql 是否定义了 TO_DATE 函数。
我建议您不要将日期作为字符串传递,而是作为日期类型传递,并让 ORM 选择如何将日期转换为适当的数据库类型。
我的 spring 应用程序遇到了一个小问题。
我正在使用这样的存储库:
public interface TripRepository extends CrudRepository<TripEntity, Long>, Serializable {
@Query("SELECT vt FROM TripEntity vt WHERE vt.opdDate "
+ " = TO_DATE(:operatingDay, 'DD.MM.YYYY') AND vt.lineId IN :lineIds")
public List<TripEntity> findByDateAndLine(@Param("operatingDay") String operatingDay,
@Param("lineIds") Collection<Long> lineIds);
我的问题是 to_date
函数。在生产中,我正在使用 Oracle,一切都很好。但是为了开发,我想使用 mysql 数据库。
是否可以编写独立于数据库的查询?或者写两个查询,但使用它们依赖于驱动程序。
如果有人能帮助我,我会很高兴。
提前致谢
我不确定 jpql 是否定义了 TO_DATE 函数。
我建议您不要将日期作为字符串传递,而是作为日期类型传递,并让 ORM 选择如何将日期转换为适当的数据库类型。