【Salesforce認定プラットフォームデベロッパー】試験対策:第17問

問題

ある会社には、Order_Number__cという必須の一意の外部IDフィールドを持つカスタムオブジェクトOrder__cがあります。
外部IDフィールドを使用して、新しいレコードを挿入し、order__cレコードのリスト内の既存のレコードを更新するために必要なDMLを実行するには、どのステートメントを使用する必要がありますか?

A.upsert orders Order_Number__c;

B.upsert orders;

C.merge orders Order_Number__c;

D.merge orders;

正解

A.upsert orders Order_Number__c;

B.upsert orders;

C.merge orders Order_Number__c;

D.merge orders;

解説

A. 正解 - upsert orders Order_Number__c; は、外部IDフィールドである Order_Number__c を使用して、新しいレコードを挿入したり、既存の Order__c レコードを更新したりするために適切なDMLステートメントです。

B. 不正解 - upsert orders; は、外部IDフィールドを指定していないため、指定された外部IDでの挿入と更新が行えません。

C. 不正解 - merge orders Order_Number__c; は、マージ操作を行うためのステートメントであり、挿入または更新には使用できません。

D. 不正解 - merge orders; もマージ操作のためのステートメントであり、挿入または更新には使用できません。

ポイント

要するに、正しい選択肢は「A. upsert orders Order_Number__c;」です。このステートメントを使うことで、Order_Number__c という外部IDフィールドを利用して、新しい Order__c レコードを挿入したり、既存のレコードを更新したりすることができます。他の選択肢は、挿入や更新に適していません。

おすすめの記事