【发布时间】:2018-09-03 01:07:52
【问题描述】:
我使用的是 Oracle 数据库 12c,Hibernate 5。 DDL
CREATE TABLE AUTHORITIES
(
AUTHORITY NVARCHAR2(64) NOT NULL
, USERNAME NVARCHAR2(64)
, CONSTRAINT AUTHORITIES_PK PRIMARY KEY
(
AUTHORITY
)
USING INDEX
(
CREATE UNIQUE INDEX AUTHORITIES_PK ON AUTHORITIES (AUTHORITY ASC)
LOGGING
TABLESPACE USERS
PCTFREE 10
INITRANS 2
STORAGE
(
INITIAL 65536
NEXT 1048576
MINEXTENTS 1
MAXEXTENTS UNLIMITED
BUFFER_POOL DEFAULT
)
NOPARALLEL
)
ENABLE
)
LOGGING
TABLESPACE USERS
PCTFREE 10
INITRANS 1
STORAGE
(
INITIAL 65536
NEXT 1048576
MINEXTENTS 1
MAXEXTENTS UNLIMITED
BUFFER_POOL DEFAULT
)
NOCOMPRESS
NO INMEMORY
NOPARALLEL;
我有实体
import org.hibernate.annotations.Type;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
/**
* Role entity.
*
*/
@Entity
@Table(name = "AUTHORITIES")
public class Authorities {
@Id
@Column(name = "AUTHORITY")
private String authority;
@ManyToOne
@JoinColumn(name = "USERNAME")
private User user;
public String getAuthority() {
return authority;
}
public void setAuthority(String authority) {
this.authority = authority;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
}
错误:
Caused by: org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'getSessionFactory' defined in com.donhuvy.config.AppConfig:
Invocation of init method failed; nested exception is org.hibernate.tool.schema.spi.SchemaManagementException:
Schema-validation:
wrong column type encountered in column [AUTHORITY] in table [AUTHORITIES]; found [nvarchar2 (Types#OTHER)], but expecting [varchar2(255 char) (Types#VARCHAR)]
如何解决?
【问题讨论】:
-
我不是 Java 专业人士。但是一点谷歌搜索给了我这个。看看这是否有帮助。 cedar715.wordpress.com/2009/10/13/…
-
我这样做了,它不起作用
-
不工作,你的意思是它又给了同样的错误,还是给你一个不同的错误?另请分享您的代码中发生的变化。
标签: java oracle hibernate oracle12c