我使用下面的注释来实现JPA 1中的Sequence但是出错了。 代码:
@TableGenerator(name="tab1", initialValue=1, allocationSize=100
//using above annotation on entity class
@Id
@GeneratedValue(strategy=GenerationType.TABLE, generator="tab1")
private Integer id;
数据库:Oracle
错误:
尝试更新序列表“OPENJPA_SEQUENCES_TABLE”失败。通常在任何数据存储区标识类上运行mappingtool的刷新操作时会创建序列表。如果您尚未运行mappingtool但想要创建序列表,请运行: java org.apache.openjpa.jdbc.kernel.TableJDBCSeq -action add
答案 0 :(得分:0)
似乎表“OPENJPA_SEQUENCES_TABLE”根本不存在,错误消息建议:
答案 1 :(得分:0)
你应该这样做:
@Id
@TableGenerator(name = "Irakli_GEN",
table = "SEQUENCES",
pkColumnName = "SEQ_NAME",
valueColumnName = "SEQ_NUMBER",
pkColumnValue = "CLIENTS_SEQ",
allocationSize = 1)
@GeneratedValue(strategy = GenerationType.TABLE, generator = "Irakli_GEN")
它应该自动创建表SEQUENCES - 并在其中创建序列。我将这个代码用于我的实体,它可以工作。