【问题标题】:SOQL SELECT doesn't return all the fieldsSOQL SELECT 不返回所有字段
【发布时间】:2016-08-03 00:33:35
【问题描述】:

我正在努力尝试从 salesforce 查询超过 3 个字段。


我试试

$records = Salesforce::query('SELECT Id, Name, Patient_Status_del__c, DOB__c,Patient_Sub_status_del__c  FROM Patients__c');

dd($records);

我只有 3 个字段


但是当我在工作台中使用相同的查询时,我得到了

SELECT Id, Name, Patient_Status_del__c, DOB__c,Patient_Sub_status_del__c  FROM Patients__c


我做错了什么?

【问题讨论】:

  • 您确定您对所有这些列都有读取权限吗?使用您在 PHP 脚本中连接到数据库的帐户
  • 您在登录 phpMyAdmin 时使用的凭据是否与您在 PHP 连接中使用的凭据相同
  • 是的。我使用相同的凭据登录 https://workbench.developerforce.com 并将其设置在我的 Laravel .env 文件中。
  • 好吧,因为我从来没有使用过salesforce,所以我要在这里退出,因为我没有其他可以提供的东西了,我害怕
  • 确保您拥有最新的 WSDL 文件。

标签: php laravel salesforce


【解决方案1】:

您的第一个示例是通过 API 进行查询,而您的第二个示例是直接查询数据库。

问题是 API 没有返回所有字段。 API 只会返回它知道的字段,因此当您添加自定义字段时,您需要更新 WSDL 以便它知道自定义字段。

【讨论】:

    【解决方案2】:

    尝试将字段放在单引号之间,以防查询中包含一些空格或任何其他字符。

    SELECT `Id`, `Name`, `Patient_Status_del__c`, `DOB__c`, `Patient_Sub_status_del__c` FROM `Patients__c`
    

    【讨论】:

    • 如果你仔细想想,真的只是一个评论! 谁赞成这种答案?
    • 您能否将您的建议添加到您的回答中?
    • 是的。 MySQL WorkBench 或 phpMyAdmin 等 GUI 工具将字段放在单引号之间。
    • @RiggsFolly:你知道我应该如何调整我的语法才能查询它吗?但是我在工作台中使用了相同的语法,并且效果很好。
    • 从“Patients__c”中选择“Id”、“Name”、“Patient_Status_del__c”、“DOB__c”、“Patient_Sub_status_del__c”。并检查下划线和双下划线。
    猜你喜欢
    • 1970-01-01
    • 2015-03-17
    • 1970-01-01
    • 2014-09-02
    • 2015-08-29
    • 1970-01-01
    • 2012-10-07
    • 2017-07-07
    • 1970-01-01
    相关资源
    最近更新 更多