o.h.tool.hbm2ddl.SchemaExport - ORA-02261

Hibernate自动建表错误信息如下:
.
.
.
2013-02-01_14:37:17.031 ERROR o.h.tool.hbm2ddl.SchemaExport - Unsuccessful: create table scott.songjy_stock_detail (STOCK_ID number(10,0) not null unique, COMP_DESC varchar2(255 char) not null, COMP_NAME varchar2(100 char) not null, LISTED_DATE date not null, REMARK varchar2(255 char) not null, primary key (STOCK_ID))
2013-02-01_14:37:17.031 ERROR o.h.tool.hbm2ddl.SchemaExport - ORA-02261: such unique or primary key already exists in the table


    alter table scott.songjy_stock_detail
        add constraint FK6E7B6CD5953C343B
        foreign key (STOCK_ID)
        references scott.songjy_stock
.
.
.

解决方案是将以下代码中主键的修饰代码“unique = true”去掉
@Id
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator="STOCK_SEQUENCE")
	@SequenceGenerator(name="STOCK_SEQUENCE", sequenceName="SEQUENCE_STOCK",allocationSize=1)
	@Column(name = "STOCK_ID", unique = true, nullable = false)
	private Integer stockId;

修改后代码如下:
@Id
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator="STOCK_SEQUENCE")
	@SequenceGenerator(name="STOCK_SEQUENCE", sequenceName="SEQUENCE_STOCK",allocationSize=1)
	@Column(name = "STOCK_ID", nullable = false)
	private Integer stockId;

你可能感兴趣的:(Hibernate,hbm2ddl,ORA-02261,SchemaExport)