COF-C03 Data Loading, Unloading, and Connectivity Practice Question
A data engineer is loading a batch of semi-structured JSON files from an external stage into a VARIANT column. They want the COPY INTO command to skip any file that contains malformed JSON without failing the entire load. Which COPY INTO option should they configure?
⚠ Common exam trap
Many candidates confuse row-level error handling (CONTINUE) with file-level error handling (SKIP_FILE).
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
✓
ON_ERROR = 'SKIP_FILE'
The ON_ERROR = 'SKIP_FILE' option tells Snowflake to skip a file entirely when any error occurs during loading, which includes malformed JSON. This allows the COPY INTO operation to continue processing other valid files without failing the entire statement. The other options either abort the load, skip only rows, or are not valid Snowflake syntax.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
ON_ERROR = 'REPLACE'
Why it's wrong here
There is no ON_ERROR = 'REPLACE' option in Snowflake COPY INTO. The valid values are CONTINUE, SKIP_FILE, SKIP_FILE_<n>, ABORT_STATEMENT, and SKIP_FILE_<n>%. REPLACE is not a recognized parameter, so this option is invalid and would cause a syntax error if used.
- ✓
ON_ERROR = 'SKIP_FILE'
Why this is correct
ON_ERROR = 'SKIP_FILE' instructs Snowflake to skip a file entirely if any error occurs while loading it, including malformed JSON. This prevents the entire COPY INTO operation from failing and allows other valid files to load. It matches the requirement to skip malformed files without aborting the load, making it the correct choice.
- ✗
ON_ERROR = 'CONTINUE'
Why it's wrong here
ON_ERROR = 'CONTINUE' skips rows that fail to load but does not skip entire malformed files. For a file with invalid JSON syntax, the COPY command will still report an error and may not load any rows from that file. It is designed for row-level errors, not file-level parsing failures, so it does not meet the requirement.
- ✗
ON_ERROR = 'ABORT_STATEMENT'
Why it's wrong here
ON_ERROR = 'ABORT_STATEMENT' is the default behavior and aborts the entire COPY statement if any error is encountered. This would cause the load to fail completely upon encountering a malformed JSON file, which is the opposite of what the engineer wants. It does not skip files and is therefore incorrect.
About these practice questions
Courseiva writes every COF-C03 question from scratch — 280 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 COF-C03 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 COF-C03 exam.