Salesforce apexにおけるDML操作とは?使い方や留意点を簡単に説明します
IT・技術関連
更新日:2024.09.05


Salesforce apexとは?
Salesforce apexはオブジェクト指向のプログラミング言語のひとつです。
構文はJavaに似ており、Salesforceほぼすべてのシステムイベントにapexが使用できます。apexを利用することで、ボタンクリックや関連レコードの更新などをシステムイベントに組み込めます。
利用しているエディションがPerformance Edition、Unlimited Edition、Developer Edition、Enterprise Edition、および Database.comの場合はもともとからapexの機能が含まれています。
例えば、apexを利用すればVisualforceページでもSOAP APIからでもロジックが実行されるようにすることも可能です。
apexのDML操作について

insertステートメント
insert ステートメントでは、1つ以上のsObjectを組織のデータに追加することが可能です。 構文は、insertsObjectとinsert sObject[]を利用します。 例えば、「A」という名前の取引先を追加する場合、Account newAcct = new Account(name = 'A');
try {
insert newAcct;
} catch (DmlException e) {
// Process exception here
}
というコードで追加します。
updateステートメント
DML操作におけるupdateステートメントで、 sObjectレコードを更新します。 構文は、updatesObjectとupdate sObject[]を使用します。 例えば、「A」という名前のBillingPostalCode項目を更新する場合、Account a = new Account(Name='A');
insert(a);
Account myAcct = [SELECT Id, Name, BillingPostalCode FROM Account WHERE Id = :a.Id];
myAcct.BillingPostalCode = '111-1111';
try {
update myAcct;
} catch (DmlException e) {
// Process exception here
}
こちらのコードを使用します。
upsertステートメント
既存のオブジェクトの存在を確かめたい場合にUpsert ステートメントを利用します。 構文にはupsert sObject [opt_field]とupsert sObject[] [opt_field]を使用します。 取引先のリストを更新、挿入をしたい場合は、List acctList = new List();
// Fill the accounts list with some accounts
try {
upsert acctList;
} catch (DmlException e) {
}
こちらのコードを使用します。
Merge ステートメント
merge ステートメントでは、同じsObjectデータ型のレコードを、1つのレコードに融合します。 マージするレコードは最大3つまでです。 例えば「A」と「B」という名前の取引先をマージする場合、List ls = new List{new Account(name='A'),new Account(name='B')};
insert ls;
Account masterAcct = [SELECT Id, Name FROM Account WHERE Name = 'A' LIMIT 1];
Account mergeAcct = [SELECT Id, Name FROM Account WHERE Name = 'B' LIMIT 1];
try {
merge masterAcct mergeAcct;
} catch (DmlException e) {
// Process exception here
}
というコードで可能です。
出典:Apex DML 操作|Merge ステートメント
参照:https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_dml_section.htm
Salesforce apexのDML使用における留意点

apexのDMLをうまく活用してSalesforceのデータを操作しよう!

この記事の監修者・著者

- AWSパートナー/Salesforce認定コンサルティングパートナー 認定企業
-
ITエンジニア派遣サービス事業を行っています。AWSやSalesforceなど専門領域に特化したITエンジニアが4,715名在籍し、常時100名以上のITエンジニアの即日派遣が可能です。
・2021年:AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
・2022年3月:人材サービス型 AWSパートナー認定
・AWS認定資格保有者数1,154名(2024年6月現在)
・Salesforce認定コンサルティングパートナー
・Salesforce認定資格者276名在籍(2024年5月現在)
・LPIC+CCNA 認定資格者:472 名(2024年6月時点)
最新の投稿
- 2024-12-27営業インタビュー情報共有の活性化の中心に。SP企画部の新たな取り組み
- 2024-07-01営業インタビュー最短で当日にご提案可能。 OPE営業の対応が早い3つの理由
- 2024-07-01営業インタビュー研修見学ツアーが高評価!「お客様のOPEに対する期待を高め、継続に貢献できればと思います。」
- 2024-07-01営業インタビュー信頼関係を構築し、エンジニアの長期就業へ
ITエンジニアの派遣を利用したい企業様へ

- 求人・転職サイトや自社採用サイトを使っているが、自社に合ったITエンジニアが応募してこない…
- すぐに採用したいが、応募がぜんぜん集まらない
こんな悩みをお持ちの採用・人事担当者の方は、
オープンアップITエンジニアをご検討ください!
オープンアップITエンジニアをご検討ください!
当社のITエンジニア派遣サービスは
- 派遣スピードが速い!(最短即日)
- 4,500名のエンジニアから貴社にマッチした人材を派遣
- 正社員雇用も可能
こんな特長があり、貴社の事業やプロジェクトに合った最適なITエンジニアを派遣可能です。
まずは下記ボタンから無料でご相談ください。