jpa 错误:org.hibernate.engine.jdbc.spi.SqlExceptionHelpe / org.springframework.dao.InvalidDataAccessResourceUsageException:执行SQL时JDBC异常

inkz8wg9  于 2023-05-18  发布在  Spring
关注(0)|答案(1)|浏览(199)

下面是:
运行时生成的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版本。但没有任何帮助。所有建议的注解添加到实体类中的操作都已经完成,但尚未解决。

py49o6xq

py49o6xq1#

也许你想写:

@Table(name = "Users", catalog = "DevDatabase", schema = "dbo")

相关问题