【问题标题】:Update table using custom queries in TYPO3 Extbase在 TYPO3 Extbase 中使用自定义查询更新表
【发布时间】:2016-07-08 06:09:45
【问题描述】:

我有一个名为“用户”的表。我需要更新“电子邮件”字段。是否有任何自定义构建查询用于更新。我只有用户的 uid。

我的意思是.. 是否有任何 TYPO3 自定义查询等效于

更新表 'user' set email = 'new@xyz.com' where uid = 1;

喜欢

$query = $this->createQuery(); $查询->匹配( $查询->逻辑与( $query->equals('organization', $organization), $query->contains('regions', $region) ) ) 返回 $query->execute();

【问题讨论】:

  • 这样,你想更新一条记录,说它的 uid 是用 findByUid() 获取的?那么最好对相应的字段使用 setter 函数。
  • 使用setter设置字段后,也只需调用更新。你明白我的意思吧??
  • @AnuBhuvanendranNair 你是对的......
  • 没问题。保持您的快速响应。这将对其他寻求解决方案的人有所帮助。

标签: php mysql typo3 extbase


【解决方案1】:

如果你使用 extbase ,你可以使用:

$object = $this->yourRepository->yourQuery();
$object->setEmail('your@email.tld');
$this->yourRepository->update($object);

【讨论】:

    【解决方案2】:

    你为什么不使用

    use HDNET\ExtensionName\Utility;
    
    Utility::exec_UPDATEquery   (
        $table,
        $where,
        $fields_values,
        $no_quote_fields = false 
    );
    

    请参考exec_UPDATEquery From TYPO3

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多