如何使用SOQL获取Salesforce表名及查看表的可查询性等参数
使用SOQL查询Salesforce对象(表)相关信息
嘿,我来帮你梳理下怎么用SOQL搞定Salesforce里的对象(也就是你说的“表”)相关查询~
1. 获取对象(表)的API名称
如果你需要确认某个对象的API名称(也就是写SOQL时要用的“表名”),或者批量获取所有对象的名称,可以直接查询EntityDefinition这个标准元数据对象。基础查询语句如下:
SELECT QualifiedApiName, Label FROM EntityDefinition
这里QualifiedApiName就是对象的API名称(对应你说的“表名”),Label是该对象在Salesforce界面显示的友好名称。
2. 查看实例中所有可用的对象(表)
上面的语句已经能列出所有对象,但如果想精准过滤出支持SOQL查询的对象,可以加条件筛选:
SELECT QualifiedApiName, Label FROM EntityDefinition WHERE IsQueryable = TRUE ORDER BY Label
这样就能得到所有可查询的对象列表啦。
3. 查询对象的额外参数(是否可查询、是否自定义等)
EntityDefinition里还有很多字段能帮你获取对象的核心属性,把这些字段加到SELECT语句里就能拿到你想要的信息:
SELECT QualifiedApiName, Label, IsQueryable, IsCustom, IsStandard, IsCustomSetting, IsDeleteable FROM EntityDefinition ORDER BY IsCustom DESC, Label
给你解释下这些常用字段的含义:
IsQueryable:标记该对象是否支持SOQL查询IsCustom:标记是否为自定义对象(你自行创建的,而非Salesforce原生对象)IsStandard:标记是否为Salesforce官方提供的标准对象(比如Account、Contact这类默认对象)IsCustomSetting:标记是否为自定义设置对象(一种特殊的自定义对象,常用于存储配置类数据)IsDeleteable:标记该对象的记录是否允许删除
小提醒
查询EntityDefinition需要你拥有Salesforce的View Setup and Configuration权限,如果没有这个权限,会返回权限不足的错误哦。
内容的提问来源于stack exchange,提问作者Sidra Asghar
相关产品推荐
相关产品推荐

