SF-Data-Arch Salesforce Data Management Practice Question
Exhibit
sfdx force:data:bulk:upsert -s Contact -f contacts.csv -i Legacy_ID__c -w 20
Refer to the exhibit. An architect is using the Salesforce CLI to perform a high-volume data upsert. What is the significance of the '-i Legacy_ID__c' parameter in this command?
⚠ Common exam trap
Candidates confuse the '-i' parameter with setting a primary key or auto-number generation, forgetting its primary purpose is matching existing records during an upsert operation.
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
✓
It defines the custom External ID field used to match existing records.
When performing an upsert operation via the Bulk API (or CLI), the system needs a way to determine if a record already exists or if a new one should be created. The '-i' parameter specifies the External ID field that the system will use as the unique key for this matching process.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
It specifies the internal Salesforce ID field for the upsert.
Why it's wrong here
While you can use the internal Salesforce ID for an upsert, the '-i' flag is specifically intended for naming a custom field designated as an External ID. If you were using the standard ID, you would typically pass 'Id', but 'Legacy_ID__c' clearly indicates a custom external field.
- ✗
It indicates the field that should be used as the primary index for PK Chunking.
Why it's wrong here
PK Chunking is used for queries and exports, not for upsert operations. The '-i' flag in an upsert command is purely for record matching and has no relation to the primary key chunking mechanism used to split large data retrieval jobs into smaller batches.
- ✓
It defines the custom External ID field used to match existing records.
Why this is correct
The '-i' flag (or --externalid) tells the Bulk API which field to use for matching the incoming data against existing Salesforce records. If a match is found based on this field, the record is updated; if no match is found, a new record is created.
- ✗
It tells the CLI to ignore all records that have a null value in that field.
Why it's wrong here
The parameter does not filter records or ignore nulls; it defines the matching key. If the External ID field is null in the CSV, the Bulk API will generally attempt to create a new record (unless the field is required), but it won't ignore the row based on this parameter.
About these practice questions
This SF-Data-Arch question is part of Courseiva's 222-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam 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 Salesforce exam blueprint
This SF-Data-Arch practice question is part of Courseiva's free Salesforce 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 SF-Data-Arch exam.