我创建了查询来根据日期间隔和房间类型搜索酒店的可用房间。当我运行此查询时,我得到以下错误:
组织。h2.jdbc。JdbcSQLException:未找到模式“R”;SQL语句:
有什么问题吗?
公共接口RoomRepository扩展JpaRepository{
@Query(value = "
SELECT Room r
FROM Room join r.bookings b
WHERE not ((b.beginDate >= :initDate And b.beginDate <= :endDate) or (b.beginDate >= :initDate And b.endDate <= :endDate) or (b.beginDate <= :initDate and b.endDate >= :endDate) and b.approved = true and r.roomType = :roomType)"
, nativeQuery=true)
public List<Room> findWithDates(@Param("initDate") Date initDate, @Param("endDate") Date endDate, @Param("roomType") long roomType);
}
如果您使用本机查询,则不应使用命名参数。模式R是生成SQL中表名的前缀。模式前缀通常添加到数据库连接中URL参数指定的表中。在您的情况下,它是不同的,因为您没有使用任何模式连接。要使用本机SQL查询,您应该使用@NamedNativeQuery
,如
本机查询是通过y和注释或注释定义的
@NamedNativeQuery(
name="complexQuery",
query="SELECT Room r
FROM Room join r.bookings b
WHERE not ((b.beginDate >= ? And b.beginDate <= ?) or (b.beginDate >= ? And b.endDate <= ?) or (b.beginDate <= ? and b.endDate >= ?) and b.approved = true and r.roomType = ?)",
resultClass=Room.class
)
public class Romm { ... }
Query query = em.createNamedQuery("complexQuery", Room.class);
query.setParameter(1, initDate);
query.setParameter(2, endDate);
query.setParameter(3, initDate );
query.setParameter(4, endDate);
query.setParameter(5, initDate );
query.setParameter(6, endDate);
query.setParameter(7, roomType);
Room room = (Room) query.getSingleResult();
您可以在Java持久化/查询中找到更多示例
从Room join r bookings b中选择Room r
您的别名不应出现在select语句中
从房间r中选择r。。。。。。。。。。
如果你选择了所有的东西,你也不需要“选择”。
从房间r...
应该足够了
我有一个名为user的实体,如下所示: 我还有一个用户摘要类,它旨在返回以进行分页和排序: 这与所有其他实体一起似乎在h2中很好地初始化,从控制台我看到如下内容: 和 甚至: 现在,我已经设置了控制器、服务和存储库... 控制器: 服务:公共接口UserService扩展了UserDetailsService{ 存储库:公共界面UserRepository扩展了JpaRepository{ 最后,
在我通过“pod update”更新我的Firebase之后,我得到了如下错误: 在这里我的播客文件: 有人知道这个错误吗? 我寻找GoogleToolboxForMac和Firebase之间的关系,但我只得到了一点信息。 仅供参考,我使用Swift 2.3和Firebase 3.8.0。 我将非常感谢您能提供的任何帮助。谢谢!
我试图在一台新计算机上运行一个项目,但是我发现了这个错误< code > framework not found dtx profiler 。我已经阅读了这篇文章,但是我没有任何Pods.framework文件,也没有< code >链接的框架和库。我不知道该怎么办。我还尝试了< code>pod反集成安装。 PS。 我打开了.xcworkspace文件,而不是另一个 清洁安装的项目 多次删除派生
在我的Spring Boot应用程序中有POJO,下面是它的样子: 现在我想选择所有与给定值相关的方式是POJO的成员。 所以这是我的查询
我试图运行一个Laravel查询,选择一个出现多次的特定字段,我得到了下面的错误。 “SQLSTATE[42S22]:未找到列:1054”“having子句”“中的未知列”“no_of_service”“(SQL:select count(*)作为内部连接在上的按分组,具有 我希望看到多次出现的字段。
问题内容: 在包含 Objective-C 和 Swift 代码的自定义框架中,Swift编译器会引发以下错误: 问题答案: 为Framework目标启用设置时,将发生这种情况。 将其设置为将解决该错误。 恕我直言,这是Swift编译器中的错误,我已经向Apple提出了警告。 参见rdar:// 21038443