【Salesforce】快速清除所有测试数据的方法,截断(Truncate)对象
场景
在开发测试过程中,某一个环境下的测试数据总会水涨船高。或者有些情况下,测试大量数据(百万级)的备份、导出的时候,需要插入巨量数据并且清除。如果单纯使用DML,会触发系统限制。如果使用future类Job的方式删除,也会花费大量时间。本文介绍一种salesforce的标准功能【截断】能够快速清除数据。
截断功能简介
截断会删除一个对象下的所有数据(records),而对象本身的定义设置(metadata)保持不变。
截断删除的数据不会出现在垃圾桶(Recycle Bin)里,因此此操作是不可逆的,具有一定的危险性。
截断只能从用户界面进行操作,且只能在Salesforce Classic版本的UI界面使用。
使用方式
打开截断权限
设置 - 用户界面 - 用户界面
找到【启用自定义对象截断】选项勾选,保存。
前提条件
在截断某个对象/自定义对象前,必须保证此对象:
- 不在另一个对象中作为查找字段(lookup-field)或者是父子关系中的父对象(master-detail中的master&#