Apex in AJAX & Apex Transactions

DEX455 - Apex 电子邮件服务、Visualforce、AJAX 与事务限制完全指南

📄 第 267 页 🎬 视频课程

课程章节介绍

好,咱们来看这页的内容,它讲的是Apex里的事务和保存点,这两个概念对保证数据不出错特别重要。 首先,不管你是通过AJAX Toolkit调用Apex——也就是用匿名块或者公开的Web Service方法——这些调用都会跑在一个Apex事务里。什么叫事务呢?简单说,Apex会把一次执行里所有的数据库操作(比如插入、更新、删除)打包成一个原子单元。要么全部成功提交,要么只要中间有一步失败,前面已经做过的修改也会全部回滚,绝不会出现“一半成功一半失败”的情况,这就确保了数据完整性。 那么事务的边界在哪儿呢?其实就是一次完整的执行单元,比如一个触发器、一个类的方法、一段匿名块、一个Visualforce页,或者一个Web Service。在这些边界里面跑的所有代码,都共享同一个事务。 但有时候,你不想整个事务都回滚,只想撤销到中间的某个点。这时候就可以用“保存点”。你可以在代码里打个标记,之后如果觉得某一步做错了,就可以回滚到那个标记,只丢弃这之后做的DML变更。 不过用保存点

关键词

Apex Salesforce Developer Guide