Oracle通过时间点恢复已经删除且提交的数据

Oracle通过时间点恢复已经删除且提交的数据

1.查询删除数据的时间点的数据
select * from 表名 as of timestamp to_timestamp('2020-10-12 15:29:00','yyyy-mm-dd hh24:mi:ss');
2.恢复删除且已提交的数据
flashback table 表名 to timestamp to_timestamp('2020-10-12 15:29:00','yyyy-mm-dd hh24:mi:ss');

如果在执行第 2 步语句,出现错误(plsql报错:没有行移植功能)。
可以执行 alter table 表名 enable row movement,然后再执行第 2 步语句即可
删除表中对应列字段
alter table MENU_SETTINGS drop column PMODULE_ID;
违反唯一性约束条件

select max(op_id) from MAINTAIN_PRO;
select t.*, t.rowid from HIBERNATE_SEQUENCES t where t.sequence_name='MAINTAIN_PRO';   //修改主键最大值

jpa 表生成器 GenerationType.TABLE
指定生成主键策略的名称,例如这里命名为“MAINTAIN_PRO
@Id
@GeneratedValue(strategy = GenerationType.TABLE,generator="MAINTAIN_PRO")
@TableGenerator(name="MAINTAIN_PRO",allocationSize=20)
@Column(name ="OP_ID",nullable=false,scale=0,length=22)
public Long getOpId(){
    return this.opId;
}


public void setOpId(Long opId){
    this.opId = opId;
}


 

posted on 2021-07-26 16:11  ALWAYS☆REMIND  阅读(260)  评论(0编辑  收藏  举报

导航