异常信息
[SQL]select userentity0_.ID as id1_0_0_, userentity0_.Name as name2_0_0_, userentity0_.SEX as sex3_0_0_, userentity0_.TypeID as typeid4_0_0_ from User userentity0_ where userentity0_.ID=1
[Err] 42000 - [SQL Server]关键字 ‘User’ 附近有语法错误。
将jpa打印的sql语句到数据库中执行,发现执行失败
然后将User 变成SQLServer全表名,Test.dbo.[User],然后再执行上面的SQL语句发现能执行成功
解决方案
将实体类@Tabel的name属性的值改为SQLServer全表名,如下所示:
@Entity
@Table(name = "Test.dbo.[User]")
public class UserEntity implements Serializable {
}
JPA配置如下:
jpa:
database: sql_server
show-sql: true
hibernate:
naming:
physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl