この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

レコードの削除

データベースにレコードを保持したら、delete 操作を使用してそれらのレコードを削除できます。レコードを削除しても Salesforce から完全に削除されるわけではなく、復元できるように 15 日間はごみ箱に置かれます。削除したレコードの復元については、後のセクションで説明します。

次の例では、「DotCom」という名前のすべての取引先を削除しています。

1Account[] doomedAccts = [SELECT Id, Name FROM Account 
2                         WHERE Name = 'DotCom']; 
3try {
4    delete doomedAccts;
5} catch (DmlException e) {
6    // Process exception here
7}

DmlException の処理についての詳細は、「一括 DML 例外処理」を参照してください。

メモ

レコードを削除および復元するときの参照整合性

delete 操作では、カスケード削除がサポートされています。親オブジェクトを削除すると、各子レコードが削除可能な場合は自動的に削除されます。

たとえば、ケースレコードを削除すると、Apex はケースに関連付けられたすべての CaseComment、CaseHistory、および CaseSolution レコードを自動的に削除します。ただし、特定の子レコードが削除可能でない場合、または現在使用中の場合、親ケースレコードの delete 操作は失敗します。

undelete 操作を行うと、次のリレーションの種類に関して、レコードの関連付けが復元されます。
  • 親取引先 (取引先の [親取引先] 項目で指定)
  • 取引先と取引先責任者の間接リレーション (取引先責任者の [関連取引先] 関連リストまたは取引先の [関連取引先責任者] 関連リストで指定)
  • 親ケース (ケースの [親ケース] 項目で指定)
  • 翻訳ソリューションのマスタソリューション (ソリューションの [マスタソリューション] 項目で指定)
  • 取引先責任者のマネージャ (取引先責任者の [上司] 項目で指定)
  • 納入商品に関連付けられている商品 (納入商品の [商品] 項目で指定)
  • 見積に関連付けられている商談 (見積の [商談] 項目で指定)
  • すべてのカスタム参照関係
  • 取引先およびリレーショングループのリレーショングループメンバー (一部例外あり)
  • タグ
  • ��事のカテゴリ、公開状態、割り当て

Salesforce は、置換されていない参照関係のみを復元します。たとえば、納入商品が、元の商品レコードが元に戻される前に別の商品と関連付けられている場合、その納入商品と商品のリレーションは復元されません。

メモ