您好我正在使用spring,liquibase,mariadb和JPA的hibernate。我刚刚遇到一个奇怪的错误,我猜这可能是hibernate中的一个错误,但我并不完全确定。
我有两个人:
@Entity
@Table(name = "portal")
public class Portal
{
...
@OneToMany(cascade = {CascadeType.ALL}, fetch = FetchType.LAZY)
private Set<AuthorisationCode> authorisationCodes = new HashSet<>();
...
}
也
@Entity
public class AuthorisationCode
{
...
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "clientid", referencedColumnName = "id")
private Portal client;
...
}
当然还有一个简单的存储库
@Repository
public interface PortalDao extends JpaRepository<Portal, Long>{}
如果我现在创建一个portal-object并尝试保存而不添加任何授权代码我会收到以下错误
portalDao.save(portal);
=&GT;
org.mariadb.jdbc.internal.util.dao.QueryException: Table 'mysqlschema.portal_authorisationcode' doesn't exist
为什么hibernate添加前缀&#34; portal _&#34;查询?我甚至不确定为什么hibernate在调用save方法时甚至会做一个select。有什么想法吗?