salesforce中的数据库使用的是Force.com 平台的数据库,数据表一行数据可以理解成一个sObject变量。接下来主要讲解一下sObject以及单表的简单DML操作。...sObject变量代表一行数据并且在Apex中只能使用SOAP API对象名称中声明的一行数据。...图8 二)SOQL SOQL全称为Salesforce Object Query Language.通过SOQL语句可以操作sObject的增删改查等操作。下面还是以上面Student表进行举例。...SOQL语句细节以及多表关联的查询等操作。...下一篇将会讲解多表关联下的SOQL以及SOQL查询深入知识。
首先先说一下 salesforce中的 heap size简单概念, salesforce中的heap size和java中的heap size概念基本相同,当对象或者变量创建时,就会给分配内存,当运行时基于逻辑动态分配内存...在debug log中通过HEAP_ALLOCATE来确定对象或者变量的分配内存的情况。...使用SOQL for loop从大量查询的数据中迭代和处理数据,官方也介绍了很多的 SOQL for loop的demo。...开发人员可以通过使用SOQL for loop处理返回多条记录的查询结果来避免堆大小的限制。...总结:heap size和CPU limitation的优化相辅相成,不要为了某一个优化而特意放弃另外一个,彼此形成一下平衡。篇中有错误地方欢迎指出,有不懂欢迎留言。
一言以蔽之:索引是对数据库表中一个或多个列的值进行排序的结构。...说完创建和删除接下来说查询。big object支持两种查询,同步 SOQL以及异步的SOQL。...如果 可以确定查询出来的数据量少想要在 apex中使用,我们可以使用SOQL进行查询,但是不是所有的SOQL语法可以使用。...SOQL关系查询基于从选择字段列表中的大对象到标准或自定义对象的查找字段(不在过滤器或子查询中)。...为了支持大对象中的数据规模,您不能使用触发器,流程,流程和Salesforce应用。 总结:篇中简单描述 big object的使用,详情自行查看官方文档。篇中有错误欢迎指出,有不懂欢迎留言。
Who.Type样新建公式字段WhatType__c,这样就能正确获取对象类型 155、【查询Activity (Task / Event)的Email,Phone】:SOQL Polymorphism...】: 我们知道标准对象和自定义对象都有相应的History对象用于存储字段历史跟踪,那么在做动态查询时是有差异的。...】:官方文档 | blog 参考 51、【如何在Js/Formula中正确使用Opportunity的HasOpportunityLineItem字段】:在apex中该字段值为Boolean类型 var...thisCase,并为该对象的标准字段赋值 2、将自定义对象插入到Case表中形成一条记录 3、返回一个新纪录的类型为ID的变量Id用于查找新纪录 */ @HttpDelete global static...thisCase,并为该对象定义标准字段赋值 2、将自定义对象插入到Case表中形成一条记录或者更新Id为id的记录 3、返回一个新纪录的类型为ID的变量Id用于查找新纪录 */ @HttpPatch
这里有4个值: Index:当前查询的对象使用索引进行查询; Sharing:当前的查询将会使用索引进行查询。当前的索引基于当前执行SQL的人的共享规则来决定的。...sObject Cardinality:查询当前对象大概的记录数; sObject Type:当前查询表的 object的名字。 以上的就是关于查询的Plan表的各个列的名词解释。...Index(索引) 索引这个概念不止针对salesforce的SOQL,其他的类似SQL server以及 Oracle都有索引的概念,查询的filter中通过索引字段可以加快查询的速度。...只需要进入field中,查看Indexed这列信息即可,下图展示Account表中的一些索引字段的截图。 ? 1. 标准索引字段 salesforce针对几乎所有的表的以下字段维护了索引。...也就是说表中的这些的字段,salesforce大部分已经自行维护了索引字段用来优化查询,无需在进行设置索引。 2.
Data 表中的,那么我们下面来看下不同的数据类型如何在 Data 中进行存储的呢?...五、SOQL 与关系 Relationships SOQL 是 Salesforce Object Query Language 的简称,具有 SQL 类似的语法结构,就像前面提到的一样,Salesforce...是以应用对象(Salesforce Object,简称 SObject)的视角管理业务数据和功能,SOQL 类似对用于对应有对象数据进行查询的 API。...1、从SQL 到 SOQL SOQL 也是采用类似表查询的结构,同 SQL 非常相似,也通过底层数据库索引来提供查询优化支撑。...这里__c 代表的使用户自定义的含义, product__c 代表的用户自定义对象 Product,而非系统标准对象和字段,系统标准对象和字段在 SOQL 无需__c 后缀,如ID,Name,CreatedBy
我们在salesforce中不管是进行sales cloud 还是 service cloud或者是自定义开发。...随着使用的年限增加,数据会慢慢增多,比如针对 sales cloud的 account / opportunity。 针对service cloud中的 account / case。...又比如我们想在vf page中SOQL进行查询,并且查询的SOQL字段没有查询关联表,只是当前表的常用字段。出现了性能问题,想要优化。...如果需要,Force.com可以有多个Skinny Table.比如下图中针对 Account创建的 Skinny Table. ?...Skinny Table不包含soft-deleted的数据,比如不包含在回收站的数据,即使SOQL设置 isDeleted=true在 Skinny Table无法查询出来。 2.
技术的更迭是有加速度的,特别是Salesforce作为SaaS领域的标杆,更是保持着每年发布3次release的速度。Spring 20' 的新功能太多,打算看一些,记一些!...欢迎大家跟我一起来学习 功能点:DeleteEvent Spring '20提供一个名为DeleteEvent的新sObject,可用于查询和过滤回收站中的记录。...DeleteEvent可与支持回收站的所有标准对象和自定义对象一起使用。这对开发人员有很大帮助。因为以前,必须使用SOQL来利用ALL ROWS,并且要使用isDeleted属性。...,ALL ROWS只能在Apex SOQL查询中使用。...API中的替代方法是调用queryAll()。另外,不能在开发者控制台的查询编辑器中使用它。 因此,拥有一个新的sObject来专门查询已删除的记录将更加容易、快捷。
每个事务是针对单个Salesforce对象还是针对多个相关对象进行操作? 消息的格式是什么(例如,通过HTTP的SOAP或REST,或两者)? 消息大小是相对较小还是较大?...不可能跨多个API调用跨事务。为了克服这个限制,一个API调用可以影响多个对象。...REST API Best Salesforce提供了一个标准的REST API,远程系统可以使用该API: –发布事件以通知您的Salesforce组织 –查询组织中的数据 –创建、更新和删除数据...流程草图 下图说明了在使用RESTAPI(用于外部事件的通知)或SOAP API(用于查询Salesforce对象)实现此模式时的事件序列。使用restapi时,事件的顺序是相同的。...) Query timeout:每一个SOQL的查询有一个独立的120秒的限制。
在工作中,我们更多操作的是一个表的对象,所以我们对SOQL的使用很多。...但是有时候,我们需要对几个表进行查询操作,类似salesforce的全局搜索功能,这时,使用SOQL没法满足功能了,我们就需要使用SOSL.其实不只是多个表检索可以使用SOSL,如果针对某个字段进行高级的检索也可以使用...SOSL支持对多个objects同时查询text/email/phone类型字段的数据,SOSL可以查询标准的对象以及自定义的对象。...3.RETURNING:此部分作为搜索返回结果的处理部分,显得尤为重要,RETURNING可以返回一个对象,也可以返回多个对象,多个对象通过逗号分隔;对象中可以返回多个字段,也可以在返回的结果中添加自定义的逻辑...比如我们希望搜索Opportunity和Account的Name中包含zero中的数据,其中,要求Opportunity中的数据按照创建日期正序排列,只查询十条,并且只搜索Name和StageName字段
一个transcation中SOQL查询回来的数量最多50000条啊,DML最多10000条啊等等。新人肯定很努力的记住相关的关键字, SOQL 搜索50000,DML 10000。...业务允许探索一下SOQL聚合的用法,这个很好理解,因为SOQL查询时间不计算在CPU limitation里面。...salesforce提供了一些聚合函数等,比如我们场景需要这些,我们可以直接通过SOQL进行聚合,而不是搜索出来以后列表进行处理。 4....salesforce针对apex有好几个government limitation,我们在写代码的时候要从多个角度考虑,好多的点可能是互斥的,我们需要权衡好我们现在要在意什么,可以舍弃什么。...没有最好的统一的解决方案,只有最适合你的当前业务场景的某个transcation代码。 总结:篇中根据最上面提供的官方文档进行一下简单的CPU limitation的描述。
-22/learn-whats-new-for-platform-developers-22 我们都知道salesforce里面 custom setting的使用方法,不了解的小伙伴可以开启时空门:salesforce...的查询数量的,所以我们在实际使用时,偶尔还是会考虑取舍,使用 list custom setting而不是 custom metadat type。...针对新的release出来以后,custom metadata同样也支持了类似 custom setting的查询方式,这种既不计算了SOQL的查询数,也使得结果获取更快。...方法提供了getInstance以及 getAll,demo中我们使用getInstance()方法,感兴趣的小伙伴可以查看一下上面链接的其他的方法。...总结:篇中简单的介绍了一下 custom metadata type的新取法,对于代码中深受 limitation所头疼的小伙伴可以考虑去进行性能调优了。
本篇参考: https://developer.salesforce.com/docs/platform/lwc/guide/reference-graphql.html https://developer.salesforce.com.../documentation 背景:想象一下我们以前做项目如果需要一个搜索功能的时候,比如搜索Account列表数据,查询条件可以基于Owner或者某个自定义的lookup字段进行查询时,我们通常要如何设计...注:官方文档中这里的代码写的是错误的,如果直接复制粘贴无法运行,因为filterLogic位置不正确。...lte Less than or equal gte Greater than or equal like 和soql中的用法相同 in 和soql中的IN用法相同 nin 和soql中的Not IN用法相同...inq 元素在一个query集中,和soql的 in子查询相同 ninq 元素不在一个query集中,和soql的not in 子查询相同 includes multi picklist包含某个值 excludes
此篇需求为在输入框中输入检索词对数据库中User表和Contact表的Name字段进行检索,符合条件的放在联想列表中,当用户选择相应的名称后,输入框中显示此名称对应的邮箱地址。...一.通过输入内容检索相关表中符合条件的数据 因为要对两个表进行操作,使用SOQL需要对两个表进行查询,并对搜索结果进行拼接,这种方式使用SOQL只能对每个字符进行like操作。...比如输入中行大连,使用SOQL需要拆分成 where name like '%中%行%大%连%'。此种检索搜索出来的结果可能会搜索出用户不想搜索出来的结果,比如 ‘行连大中’。...SOSL的操作以及检索封装可以参看:salesforce零基础学习(七十五)浅谈SOSL(Salesforce Object Search Language),此篇使用封装的方法作为Util。...二.对检索的数据进行去重以及封装 对于搜索结果,我们需要三部分内容: 搜索的数据中对象的名称:objName; 搜索的数据类型,属于User还是Contact: objType; 搜索的数据中对象的邮箱
Salesforce acting as IdP, IdP initiated 我们在前一个博客中也解释了 SSO中的 SP(Service Provider) 以及 IdP(Identity Provider...查询场景 1)通过Record Id去查询:使用的Http方式为get,并且访问的格式为 /services/data/v51.0(这里填写版本号)/sobjects/Account(这里填写表的API...整体的cURL访问:curl https://yourInstance.salesforce.com/ + 上述的格式即可。 ? 如果我们只想查询这条数据的指定的字段,我们只需要在后面添加参数 ?...3) 通过SOQL语句进行查询:标准 rest接口同样支持使用SOQL去返回指定的list信息。格式为:services/data/v51.0/query/?...q=SOQL query, 其中 SOQL使用 + 分隔 。下面demo中在Account表中查询了 Id以及Name。response中包含了记录数以及细节信息,可以通过层级结构进行数据的获取。
然而在很多的场景中,我们需要反复执行这些数据加载任务,例如每天晚上凌晨一点(夜间服务)来运行某些操作。因此,对于这些情况我们可以使用标准的Data Loader命令行工具来解决。...在本文中,我将会详细介绍如何使用Data Loader命令行 在Data loader中建立命令行的最重要的部分就是利用DataLoader提供的功能来生成加密密码。 ?...process Name 在我们的例子中Process的名字是Account,Process名字只是属性名。...Run Commandline Data Loader 运行上面的命令后,你的数据将导出到开始配置的”process-config.xml”文件中。...要么放在 “process-conf.xml文件中” 错误 2: 查询错误
image.png 使用过Oracle或者Sql Server的朋友们都知道,语句【SELECT * FROM 表】可以查询整个表的项目,之前Salesforce是不支持此功能的,只能每个项目都写一遍...,非常麻烦,随着2021年2月14日,Spring '21的正式上线,此类功能终于可以使用了,它就是今天要介绍的SOQL FIELDS()方法,前提是当前用户对于取得项目必须具备参照权限, 具体有以下三种方式...中不支持使用,我们可以在匿名框中试一试。...in this API. 」 4.Apex内全项目查询方法 根据上边的实验结果,想必大家有点失望,在Apex内居然只可以使用FIELDS(STANDARD),如果把所有自定义项目都写一遍,即麻烦,看着也不美观...首先做一个Apex共通类,用于取得指定Object的全部自定义项目,然后进行查询操作,如下 public with sharing class GetAllCustomFieldsUtil {
https://resources.docs.salesforce.com/210/latest/en-us/sfdc/pdf/api_streaming.pdf 背景:工作中我们有可能会有这样相关的需求...,不能通过“.”的方式查询到父的其他信息; 查询中包括Text Area字段; ORDER BY; GROUP BY; WHERE部分使用了formula类型字段; NOT Example : SELECT...渠道在salesforce端也封装成了一个对象 StreamingChannel, StreamingChannel表结构如下: Description : Streaming Channel的描述 ID...: where条件部分的字段的FLS query对象的读的权限 PushTopic对象的读的权限 基于Sharing Rule的新建和编辑记录的权限 Salesforce存储了基于PushTopic时间... 其中ChannelName为上面定义的渠道的名称,包含一个或者多个条件,多个条件使用'&'分割,比如 /topic/TestAccountPushTopic
在这个解决方案中,Salesforce是数据源,您可以使用各行的时间/状态信息来查询数据并过滤目标结果集。...这可以通过将SOQL与SOAP API和query()方法一起使用,或者通过使用SOAP API和getUpdated()方法来实现。...其他关键点 我们可以在以下情况下将外部来源的数据与Salesforce集成: •外部系统是数据主系统,Salesforce是单源系统或多个系统提供的数据的使用者。...3.应用预定义的处理规则,包括验证、改进等。 4.使用ETL工具的可用连接器/转换功能创建目标数据集。 5.将数据集写入Salesforce对象。 ...•任何导入后处理,如trigger,只能选择性地处理数据。
领取专属 10元无门槛券
手把手带您无忧上云