为了账号安全,请及时绑定邮箱和手机立即绑定

使用修改和查询注释时我的表没有映射?

使用修改和查询注释时我的表没有映射?

慕桂英546537 2022-10-26 15:58:19
我正在使用@Modifying 和@Query 注释直接执行我的sql 语句,但是我得到一个错误,告诉我我的表没有映射,所以我不知道我做错了什么,这是我的代码:@Repositorypublic interface TypesContratDaoJPA extends CrudRepository<Type, Long> {    @Query("select type_id from declaration_type where declaration_id=:declaration")    List<Integer> getListTypes(@Param("declaration") int declaration);    @Modifying    @Query("insert into declaration_type values(:declaration,:type)")    void addTypeToContrat(@Param("declaration") int declaration, @Param("type") int type);    @Modifying    @Query("delete from declaration_type where declaration_id=:declaration and type_id=:type")void deleteTypeFromContrat(@Param("declaration") int declaration, @Param("type") int type);}我收到此错误:Caused by: java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: declaration_type is not mapped [delete from declaration_type where declaration_id=:declaration and type_id=:type]at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:133)at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:157)at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:164)at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:670)at org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:23)...... ... ...任何帮助将非常感激。
查看完整描述

1 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

看起来您想要执行本机查询而不是 JPQL 查询。

为了将查询标记为本机,您应该将其添加为注释nativeQuery = true上的属性。@Query例如,您的第一个查询应如下所示:

@Query("select type_id from declaration_type where declaration_id=:declaration", nativeQuery = true)
    List<Integer> getListTypes(@Param("declaration") int declaration);

如果您不添加nativeQuery = true查询注释,则该查询被视为 JPQL 查询。
因此,为了使您的第一个查询工作,您将必须有一个名为的类,该类declaration_type用 注释@Entity并且具有名为declaration_idand的字段type_id。您应该查看一些 JPQL 教程(或文档)以了解有关这些类型查询的更多信息。


查看完整回答
反对 回复 2022-10-26
  • 1 回答
  • 0 关注
  • 85 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信