gpt4 book ai didi

java - hibernate HQL 中 mysql 的 time_to_sec 等效项

转载 作者:行者123 更新时间:2023-12-02 08:36:37 26 4
gpt4 key购买 nike

hibernate HQL 中是否有任何方法与 MySQL 数据库中的 TIME_TO_SEC 具有相同的功能。

问这个问题是因为我想在我的 Oracle 数据库中使用此 HQL 查询:

"select count(log) from Entry log where time_to_sec(lclTime) between '"
+ timeInSeconds + "' and '" + nextHour + "

我必须使用 hibernate HQL 在 Oracle 和 MySQL 数据库中执行此查询。

最佳答案

由于您使用的是特定于数据库的函数( native MySQL 查询),因此当您将数据库更改为 Oracle 时,它​​将不起作用。我认为明智的解决方法是使用 HQL。我发现您的查询无法像您所写的那样可移植。

修复:
1.将MySQL时间数据类型迁移到Oracle日期数据类型。
2. 将实体字段更改为 java.sql.Date 类型。

如果您遇到任何问题,请尝试使用 Hibernate 用户类型来映射它。

用户类型数据类型在这种情况下有很大帮助。

关于java - hibernate HQL 中 mysql 的 time_to_sec 等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13135055/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com