686. You execute the following FLASHBACK TABLE command:
Which two statements are correct?(Choose two.)
A.The EMP table that was dropped by mistake earlier is restored.
B.The FLASHBACK TABLE statement is executed as a single transaction.
C.The FLASHBACK TABLE statement does not maintain existing indexes on the EMP table.
D.The changes made to the EMP table since the specified time are undone if no constraint is violatedduring flashback.
Answer: BD
解析:此题考察闪回表,一定要和闪回删除区分开,闪回表是当你对一个表做了DML操作,可以通过它来闪回到你没有操作之前,它是基于undo表空间的,读取的是undo表空间的里的历史数据来恢复,而闪回删除(flashback table before drop )把已经drop掉的表从回收站里面恢复出来,所以A选项错误,针对C选项,从官方文档可以看出来C错误,Oracle Flashback Table:
Restores all data in a specified table to a previous point in time described by a timestamp or SCN.
Performs the restore operation online.
Automatically maintains all of the table attributes, such as indexes, triggers, and constraints that are necessary for an application to function with the flashed-back table. 所以C错
Maintains any remote state in a distributed environment. For example, all of the table modifications required by replication if a replicated table is flashed back.
Maintains data integrity as specified by constraints. Tables are flashed back provided none of the table constraints are violated. 所以D对
This includes any referential integrity constraints specified between a table included in theFLASHBACK TABLEstatement and another table that is not included in theFLASHBACK TABLEstatement.
Even after a flashback operation, the data in the original table is not lost. You can later revert to the original state.