我有一个简单的JPA注释类:
@Entity
@Table(name = "archive_operators")
class User {
@Id
@Column(name = "aop_user_id")
@BeanProperty var userID: String = _
@Column(name = "aop_pswd", nullable = false)
@BeanProperty var password: String = _
@Column(name = "aop_access", nullable = false)
@BeanProperty var access: String = _
}
我正在做一个简单的获取(session
是一个实例或org.hibernate.Session
):
val result = session.get(clazz, id)
获得异常:com.microsoft.sqlserver.jdbc.SQLServerException:'。'附近的语法不正确。
日志中有一行:
2014-03-21 08:58:30,201 DEBUG [pool-1-thread-9] ohSQL [SqlStatementLogger.java:109]选择user0_.aop_user_id为aop_user1_0_0_,user0_.aop_access为aop_acce2_0_0_,user0_.aop_pswd为aop_pswd3_0_0_来自List()。archive_operators user0_ where user0_.aop_user_id =?
“from List()”部分非常可疑,但我不知道它来自哪里。这习惯了,所以很明显我在某处改变了某些东西,但是我不知道是什么或如何导致这个问题。
答案 0 :(得分:0)
Imho这是sql方言的问题
你能确保你在休眠配置中有这样的东西
<hibernate-configuration>
<session-factory>
[...]
<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
[...]