[英]HIbernate onetoMany mapping on non unique column
我有以下三个牌桌玩家,比赛和媒体,如下所示
Player
player_id-->PK
Media_id
Match
match_id-->PK
Media_id
Media
Media_internal_id --> PK
Media_id
Other_details
媒体ID是非唯一列,可以具有重复值,它是联接列。 现在我想加载与播放器关联的所有媒体对象
尝试过以下
Player{
@OneToMany
@Formula("SELECT * FROM MEDIA WHERE MEDIA_ID = MEDIA_ID")
private List<Media> media= new ArrayList<Media>();
}
仓库代码
@Repository
public interface PlayerRepository extends JpaRepository<Player, Integer>{
@Query(value=" SELECT P.* FROM PLAYER P ", nativeQuery=true)
public List<Player> findAllPlayer();
}
错误:
o.h.e.jdbc.spi.SqlExceptionHelper - Table 'tennis.PLAYER_media' doesn't exist
如何映射?
您只能将主键用于劳资关系。
下面是单向示例。
Player{
@OneToMany
@JoinColumn(name = "player_id")
private List<Media> media= new ArrayList<Media>();
}
玩家:
player_id-> PK
其他详情
媒体:
Media_id-> PK
player_id-> JoinColumn
其他详情
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.