如何获取Salesforce中表中所有字段的列表?

时间:2016-03-29 10:02:31

标签: sql salesforce soql

有没有办法获取Salesforce中表格中所有字段的列表?

下面是我用来获取该特定表中所有列的SQL语句:

SELECT * FROM myTableName;

4 个答案:

答案 0 :(得分:1)

不,没有办法获得所有领域。 只能通过额外的SOAP API。

答案 1 :(得分:0)

MySQL:   执行查询描述myTableName;

MS SQL:   执行查询 exec sp_columns MyTable

答案 2 :(得分:0)

从sys.tables中选择t.name,c.name t在t.object_id = c.object_id上加入sys.columns c

它将显示数据库中所有表的所有字段

OR 从sys.tables中选择t.name,c.name t在t.object_id = c.object_id上加入sys.columns c,其中t.name喜欢'%TableName%'将显示特定表的所有字段。

答案 3 :(得分:0)

假设您需要Account对象(供参考),请尝试:

String[] allFields = new String[]{};
Map<String, Schema.SObjectField> fields = Schema.Account.SObjectType.getDescribe().fields.getMap();
for (String fieldName:fields.keySet()) {
    DescribeFieldResult fieldDesc = fields.get(fieldName).getDescribe();
    if (fieldDesc.isAccessible()) {
        allFields.add(fieldDesc.getName());
    }
}
Account[] accs = Database.query('select ' + String.join(allFields, ', ') + ' from Account limit 1');
system.debug(accs);