学说合并:日期时间字段始终更新

2023-11-26

我用现有的实体创建一个新实体Id,我想更新相关的数据库记录。

教义merge一直是我最好的朋友:识别是否有更改并生成正确的更新查询。

$entity = new Entity();
$entity->setId(1);
$entity->setName('test');
$EntityManager->merge($entity);
$EntityManager->flush();

假设 id=1 的元素已经存在于数据库中:如果名称与“test”不同,Doctrine 会生成以下查询:

UPDATE table SET name = ? WHERE id = ? ["test","1"]

如果我再次运行上面的代码,Doctrine 会识别出没有任何更改,并且没有提交任何查询。

But...当我设置 DateTime 字段时,Doctrine 认为它已更改并始终运行更新查询:

$entity = new Entity();
$entity->setId(1);
$entity->setDate(new \DateTime(2000-01-01));
$EntityManager->merge($entity);
$EntityManager->flush();
//* ALWAYS commits this query:
>> UPDATE table SET date = ? WHERE id = ? ["2000-01-01 00:00:00","1"]

您知道如何避免这种无用的更新吗?谢谢!


显然这似乎是 Doctrine 中的一个错误,尚未解决(参考Github)

这是预期的行为,对象通过引用进行比较

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

学说合并:日期时间字段始终更新 的相关文章

  • 如何接收发送到 twilio 号码的短信

    我在 twilio 创建了一个免费帐户 用于通过我的网站发送短信 注册后 我得到了一个 twilio 号码 例如 XXX XXX XXXX 我可以向手机号码发送消息 但我不知道如何使用这个 twilio 号码接收短信 请帮我解决这个问题 T
  • MySQL 中的 UDF 性能

    我注意到 当查询在 SELECT 或 WHERE 子句中调用 UDF 时 MySQL 查询执行时间的性能会呈指数级下降 有问题的 UDF 查询本地表以返回标量值 因此它们不仅执行算术表达式 而且充当相关子查询 我通过简单地删除 UDF 并使
  • 传递给 Illuminate\Routing\Middleware\ThrottleRequests::addHeaders() 的参数 1 必须是以下实例

    我创建了一个新的中间件来检查用户令牌我创建了中间件然后添加到 kernal php 但是当我尝试访问中间件中的 request 时我收到错误 这是我的中间件代码 namespace App Http Middleware use Illum
  • 如何在PHP中完成http响应并进行进一步处理?

    就我而言 我需要向客户端回显一个标志并发送一封电子邮件 现在客户端需要等待电子邮件发送 但我想把这两个步骤分开 该怎么做呢 你可以看一下异步运行 PHP 任务 https stackoverflow com questions 858883
  • php/symfony/doctrine 内存泄漏?

    我在使用 symfony 1 4 和原则 1 2 将对象批量插入数据库时 遇到问题 我的模型有一种称为 Sector 的对象 每个对象都有多个 Cupo 类型的对象 通常范围从 50 到 200000 这些物体非常小 只是一个短标识符字符串
  • 在 PHP 中使用可变变量是不好的做法吗?

    例如 一个简单的MVC类型系统 api class method使用重写为 PHP 变量 htaccess nginx conf 然后做类似的事情
  • 带摘要的 php curl 返回两个响应

    我发现了一个 奇怪 的 php CURL 行为 这让我抓狂 基本上我正在做的是使用curl 进行摘要身份验证的调用 这是我的代码的摘录 curl setopt this gt c CURLOPT HTTPAUTH CURLAUTH DIGE
  • PHP 多个 Ajax 请求:第一个请求阻止第二个请求

    我在一页上有 2 个 ajax 请求 我运行了第一个请求并单独启动了第二个请求 但第二个在第一个运行后停止工作 第一次结束后继续 第一个请求需要很长时间 大约 30 60 秒 此时我需要第二个请求来显示日志第一个请求发生的情况 我尝试使用
  • CakePHP Unfilled 单选按钮在提交时更改为不需要的值

    我有这个表单元素 form gt input ChecklistResponseGovernmentInfo driversLicenseIsOnline array type gt radio empty gt true options
  • MySql 从另一个表中减去一个表

    我有两个表 A 包含所有数据 表 B 从 A 中随机选择 25 的数据创建 所以 A 和 B 具有完全相同的列 也没有独特的列 我想做的是从 A 中减去 B 有什么想法吗 查看所有行A除了那些在B SELECT FROM A WHERE f
  • 在 Doctrine DQL 中选择 count() ,并使用左连接多对多单向关系,其中用户没有关系特定组

    情况 我尝试在 DQL 中为不属于特定组的用户选择 count 标准ManyToMany之间的单向关系User and Group实体来自FOSUserBundle and SonataUserBundle 系统 Symfony 2 5 D
  • MySQL 中非空值的计数和分组

    我需要计算按特定 ID 分组的非空 我的意思是至少包含 1 个字符的字符串 行 例如 我的数据可能如下所示 form id mapping 1 value 1 1 1 value 2 2 2 NULL 3 value 3 我想计算每个表单的
  • php - 重定向ajax请求[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何在 php wordpress 中重定向 ajax 请求 I tried header Location http redirect
  • Sublime Text 编辑器中的 PHP 语法检查

    在Gedit中 我可以在当前文档上添加 php l 外部工具 如果我安装了PHP命令行 它将对文档进行语法检查 有没有办法用 Sublime Text 编辑器来做到这一点 注意 我有一台 Mac 并且安装了 PHP CLI 我想我必须将代码
  • MySQL 选择第一个字符在哪里

    如何选择单元格的第一个字符并使用它来定义返回的内容 看看MySQL 字符串 和 控制流 功能 http dev mysql com doc refman 5 1 en functions html 例如 SELECT IF LEFT myF
  • 如何在 MySQL 中创建查询以根据日期和独特字段减去连续行?

    基于SQL根据日期和另一列减去两行 https stackoverflow com questions 12310221 sql subtract two rows based on date and another column我有一个好
  • 如何让php页面从html页面接收ajax post

    我有一个非常简单的表单 其中有一个名字输入字段 我捕获了表单数据 并使用标准 jQuery 发布方法通过 ajax 将其传输到 PHP 页面 但是 我根本无法从 PHP 页面获得任何在服务器端捕获数据的响应 我不确定我做错了什么或缺少什么
  • 在 Elasticsearch php API 中使用多种类型或索引

    我想使用查询多种类型和索引Elasticsearch PHP API 但我不知道怎么办 我应该将类型和索引的数组传递给 params params index index array of indices params type types
  • 如何强制下载图片?

    我的页面上有一个动态生成的图像 如下所示 img src 我不想告诉我的用户右键单击图像并点击保存 而是想公开一个下载链接 单击该链接将提示下载图像 如何实现这一目标 最初我在 js 中尝试这样做 var path my image att
  • 突出显示单词并提取其附近文本的函数

    我有一个文本例如 Etiam porta semmalesuada magna mollis euismod 整数取数 ante venenatis dapibus posuere velit aliquet 埃蒂亚姆 门塔 塞姆 male

随机推荐

  • WPF 通知

    如何为我的 WPF 应用程序创建通知 例如浏览器上的通知 它们通过浏览器顶部的 工具栏 显示消息 或者通过浏览器右下角向上 向下滑动的弹出窗口显示 MSN 样式通知屏幕 也许在应用程序中心淡入 淡出的面板可以 你的问题有点模糊 因为对于 W
  • ASP.NET MVC:从数据库加载图像并在视图中显示它们

    我们的数据库中有一些图像并希望在视图中显示它们 我发现two way去做这个 首先 我们在控制器中创建操作方法 从数据库获取图像并返回 FileContentResult public ActionResult GetImage int i
  • Git 仅将主文件中的单个文件合并到当前分支中[重复]

    这个问题在这里已经有答案了 我刚刚开始使用 git 我从 master 创建了分支 A 我已经在branch A中创建了文件abc txt 并成功将branch A合并到master中 现在我正在分支 A 中处理相同的文件 并希望将主文件
  • 为什么 make 打印“make: Nothing to be do for ‘all’.”? [复制]

    这个问题在这里已经有答案了 这是一个 Hello c 模块和 Makefile 执行后make从 woking 目录中我收到以下消息 make 无需为 全部 执行任何操作 这是 Hello c 文件 include
  • 无法将 List 传递给需要 List 的方法,其中 Foo : IFoo

    我有课Foo实施IFoo界面 我有一个方法List
  • Kotlin:获取两个日期之间的差异(现在和上一个日期)

    很抱歉 如果类似的问题被问了太多次 但我发现的每个答案似乎都存在一个或多个问题 我有一个字符串形式的日期 例如 04112005 这是一次约会 2005 年 11 月 4 日 我想获得当前日期和此日期之间的差异 以年和日为单位 到目前为止
  • 如何在bazel规则中获取WORKSPACE目录

    我命令使用 clang 工具 例如clang format clang tidy或生成一个编译数据库 like this 我需要知道 bzl 文件中的 WORKSPACE 目录 我怎样才能获得它 考虑以下示例 我只想打印工作区中所有 src
  • 将带有 NSNotificationCenter 的对象传递给其他视图

    我试图将一个对象从我的主视图类传递到另一个类中的其他通知接收器 我想传递一个名为 Country 的对象 该对象从主控制器中的 SOAP 请求加载所有城市 并且我想将其发送到下一个视图 国家 国家分配 init 国家 地区标题 interf
  • Eclipse CDT 抱怨未解决的功能,但仍然构建成功

    以下 C 应用程序在 Eclipse CDT 中成功编译并运行 但 IDE 仍然报告错误 Could not resolve function wprintf include
  • 如何禁用这些 VSCode 工具提示? [复制]

    这个问题在这里已经有答案了 每当我打字时 这些工具提示就会出现 有办法禁用它们吗 有几种方法可以在 VSCode 中自定义 IntelliSense 我相信你照片中的那个是参数提示 你可以去文件 首选项 设置并搜索 parameterHin
  • 如何在支持 Python 3 的 OSX 上安装 vim?

    我安装时遇到问题vim with python 3 for MacOS 我知道有一个类似的类似的问题关于那个话题 但我无法解决问题 首先我跑了vim version并得到了 Included patches 1 503 505 680 68
  • 如何从 Firebase 实时数据库导出数据?

    我正在使用 Firebase 进行开发 并将数据存储在实时数据库 我需要在 Stack Overflow 上分享我的数据库结构以解决问题 或者在进行重大更改之前进行备份 如何使用 Firebase 控制台执行此操作 数据可以从 Fireba
  • 使用 PowerShell 在远程服务器上安装证书

    我想在远程服务器上安装使用 makecert exe 创建的证书 X 509 我无法使用 psexec 或类似的东西 但必须使用 PowerShell 服务器操作系统 Windows Server 2008 R2 PowerShell 版本
  • Meteor 找到带有 id 的对象

    假设我有一个 id 字符串 看起来像557fba5a8032a674d929e6a1它存储在会话中 我尝试检索一个文档 其 id与上面相同 但即使它存在我也找不到它 Posts findOne id 557fba5a8032a674d929
  • 将 2500 个 geoJSON 多边形渲染到传单地图上

    我一直在寻找但似乎找不到解决方案 我有一个大小为 170mb 的 GeoJSON 文件 它包含大约 2500 个多边形 不知何故 我需要将其渲染为传单地图 显然以这样的规模我没有机会 呈现这些数据的最简单方法是什么 我是否能够创建一个完整的
  • django中如何动态创建权限?

    现在我可以使用 Django 组模块创建新组 from django contrib auth models import Group我可以为组分配权限 例如我创建了一个新组 人力资源 by Group name HR 现在我想创建像这样的
  • 如何将 javascript 值设置为 jinja 变量

    我知道我们可以像这样将 Jinja 变量设置为 js 变量 var x value 但我正在尝试做相反的事情 即我正在尝试将 javascript 值设置为 jinja 变量 我尝试了以下方法 但没有任何效果 value x set val
  • .zshrc 配置文件语法错误

    我在 zshrc 文件中的某处遇到语法错误 但我似乎找不到它 我收到此错误消息 zshrc 49 bad assignment 这是我的 zshrc 文件 Path to your oh my zsh configuration ZSH H
  • R:数据框中的重音字符

    我很困惑为什么某些字符 例如 和 在数据框中丢失了变音标记 而其他字符 例如 和 却没有 顺便说一句 我的操作系统是 Windows 10 在下面的示例代码中 向量 czechvec 有 11 个单字符字符串 全部是斯拉夫重音字符 R 正确
  • 学说合并:日期时间字段始终更新

    我用现有的实体创建一个新实体Id 我想更新相关的数据库记录 教义merge一直是我最好的朋友 识别是否有更改并生成正确的更新查询 entity new Entity entity gt setId 1 entity gt setName t