この記事の目次
Salesforce apexとは?
![](https://www.pakutaso.com/shared/img/thumb/soucecodeIMGL9003_TP_V.jpg)
apexのDML操作について
![](https://cdn.pixabay.com/photo/2018/11/27/10/57/large-3841242_1280.jpg)
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使用における留意点
![](https://www.pakutaso.com/shared/img/thumb/YUKA150701278597_TP_V1.jpg)
apexのDMLをうまく活用してSalesforceのデータを操作しよう!
![](https://www.pakutaso.com/shared/img/thumb/MBP9V9A8316_TP_V.jpg)
この記事の監修者・著者
![株式会社オープンアップITエンジニア](https://tenshoku-careerchange.jp/wp-content/uploads/2023/07/fzxADbr-_400x400-1-150x150.jpg)
-
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
最新の投稿
- 2024年3月26日キャリア・転職保安職(自衛官・警察・消防官など)に向いている人の性格・特徴ランキング【現役保安職(自衛官・警察・消防官など)36人が回答】
- 2024年3月26日キャリア・転職保安職(自衛官・警察・消防官など)に必要なスキルランキング&スキルアップの方法とは?【現役保安職(自衛官・警察・消防官など)36人が回答】
- 2024年3月26日キャリア・転職クリエイター職(ライター・デザイナー・編集)に向いている人の性格・特徴ランキング【現役クリエイター職(ライター・デザイナー・編集)64人が回答】
- 2024年3月26日キャリア・転職クリエイター職(ライター・デザイナー・編集)に必要なスキルランキング&スキルアップの方法とは?【現役クリエイター職(ライター・デザイナー・編集)64人が回答】