下面是:
运行时生成的JPA查询:select m1_0.Patient_Id,m1_0.PLN_ID from [DevDatabase.dbo].Users m1_0 where m1_0.Patient_Id=?
实体类:
@Entity
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@ToString
@Table(name = "Users", schema = "DevDatabase.dbo")
public class MemberDetailsEntity
{
@Id
@NonNull
@Column(name = "Patient_Id")
private String PatientId;
@Column(name = "PLN_ID")
private String planId;
}
在迁移到java 17之后,我看到自动生成的查询碰巧在开头和结尾给模式名称(DEVDATABASE.DBO)添加了方括号,但是它应该像这样添加[DEVDATABASE].[DBO]或者不添加它们。因此,查询无法在MSSQL中执行并引发
ERROR org.hibernate.engine.jdbc.spi.SqlExceptionHelper -无效的对象名称DevDatabase.dbo.Users或org.springframework.dao.InvalidDataAccessResourceUsageException:执行SQL DevDatabase.dbo.Users时出现JDBC异常
如何解决这个问题?
我尝试升级和降级hibernate版本。但没有任何帮助。所有建议的注解添加到实体类中的操作都已经完成,但尚未解决。
1条答案
按热度按时间py49o6xq1#
也许你想写: