DEA-C02 Storage and Data Protection Practice Question
A data engineer maintains a transient table named STG_EVENTS in a Snowflake Enterprise Edition account. The table has a DATA_RETENTION_TIME_IN_DAYS setting of 1. The engineer accidentally truncates the table and immediately realizes the mistake. What is the most reliable way to recover the lost rows?
⚠ Common exam trap
The trap here is assuming Fail-safe protects transient tables or that TRUNCATE can be undone with UNDROP; in reality transient tables have no Fail-safe and TRUNCATE leaves the table in place, so only Time Travel applies.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Query the table with the AT (TIMESTAMP => ...) clause to read the rows as they existed before the truncate.
Transient tables in Enterprise Edition support Time Travel up to a maximum of 1 day, which is exactly the configured retention here. Because the truncate just happened, the engineer can still read the historical version of the table with the AT clause and copy the rows back. Fail-safe does not cover transient tables, UNDROP only applies to dropped objects, and no REST API provides point-in-time table restoration.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Use the Snowflake Time Travel REST API to request a point-in-time restore of the table to the previous hour.
Why it's wrong here
Snowflake does not expose a Time Travel REST API that performs point-in-time table restores. Time Travel recovery is done through SQL constructs such as AT and BEFORE clauses, cloning, or INSERT ... SELECT from a historical version. No such API endpoint exists for this purpose, so this approach is not viable in the scenario.
- ✗
Run UNDROP TABLE STG_EVENTS, because TRUNCATE places the table in a recoverable dropped state.
Why it's wrong here
TRUNCATE removes rows but does not drop the table, so there is no dropped object for UNDROP to restore. UNDROP TABLE only operates on tables that were actually dropped and are still within their retention window. Running it here would fail or, at best, target an unrelated dropped object, leaving the truncated data unrecovered.
- ✓
Query the table with the AT (TIMESTAMP => ...) clause to read the rows as they existed before the truncate.
Why this is correct
A transient table with a 1-day retention still supports Time Travel within that window, so the engineer can query the pre-truncation version using AT (TIMESTAMP => ...) and re-insert the rows. This is the reliable in-place recovery method. Note the retention window must not have elapsed, and the TIMESTAMP must fall inside the retention period.
- ✗
Restore the table from Fail-safe, because Fail-safe retains the pre-truncation micro-partitions for 7 days.
Why it's wrong here
Fail-safe does not apply to transient tables at all, so it cannot be used to recover the truncated rows. Even for permanent tables, Fail-safe is a last-resort, Snowflake-managed recovery path that the customer cannot invoke directly with SQL, and it is not a substitute for Time Travel. It also would not restore the table to a queryable state on demand.
About these practice questions
Courseiva writes every DEA-C02 question from scratch — 229 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official Snowflake exam blueprint
This DEA-C02 practice question is part of Courseiva's free Snowflake certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DEA-C02 exam.