我在尝试添加新记录时遇到此错误
Hibernate:
select
STEST_PP_DATA_SEQ.nextval
from
dual
2022-04-06 12:53:03.487 WARN 23884 --- [0.1-8082-exec-1] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 2289, SQLState: 42000
2022-04-06 12:53:03.510 ERROR 23884 --- [0.1-8082-exec-1] o.h.engine.jdbc.spi.SqlExceptionHelper : ORA-02289: sequence does not exist
我的班级
@Data
@NoArgsConstructor
@AllArgsConstructor
@Entity(name = "TEST_PP_DATA")
@SequenceGenerator(name = "STEST_PP_DATA_SEQ", sequenceName = "STEST_PP_DATA_SEQ", initialValue = 1, allocationSize = 1)
public class TestPPData extends AuditableEntity{
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "STEST_PP_DATA_SEQ")
@Column(name = "ID", nullable = false)
这就是我如何将序列添加到我的DB
CREATE SEQUENCE STEST_PP_DATA_SEQ INCREMENT BY 1 START WITH 1 NOMAXVALUE MINVALUE 1 NOCYCLE NOCACHE NOORDER
您可能需要完全限定名称。您可以尝试以下查询来检索所有者吗:
SELECT owner, status
FROM All_Objects
WHERE object_type = 'SEQUENCE'
AND object_name = 'STEST_PP_DATA_SEQ';
然后使用序列作为:
select <OWNER>.STEST_PP_DATA_SEQ.nextval
from dual;
如果第一个查询没有返回任何内容,或者状态与VALID不同,那么在创建序列时就会出现问题。