微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在执行php dbal executeUpdate

如何解决在执行php dbal executeUpdate

我正在使用dbal executeUpdate语句执行以下语句:

UPDATE photos SET file_title = ?,file_description = ? WHERE id = ?

具有一个数组,该数组按以下顺序包含这些值:“ hi”,“ test me”和“ 6621”。

executeUpdate语句的结果分配给$ count变量,但是此值是受update语句影响的行数,如果要更新的行已经具有前两个数组值之一,则为0。但是,如果我在MysqL工作台应用程序中运行相同的update语句,则会看到一条消息,指示受影响的行数,匹配的行和更改的行。

是否可以使用PHP dbal获取所有这三个行计数值?

我当前使用$ count变量来确定是否进行了任何更改,但是由于该值返回0,但是行更改后的值为1,所以我宁愿使用行更改后的值来确定更新语句是否成功

注意,我不在乎用户的file_title和file_description列的nes值在指定的表行中是否为相同的值,但是如果发生这种情况,我不想将其解释为错误

如果可能的话,我宁愿不必预取该行以查看是否存在匹配的行,然后将预取的列值与用户指定的值进行比较以确定是否需要执行更新,以及实际更改的列。

我的Web应用程序支持多个同时用户,因此当我最初使用数据库中的值创建网页,然后让用户更改这些值并保存其更改时,其他用户可能会对同一行进行更改,因此第一个用户尝试保存其更改时使用的值与最初检索到的值不同,但与另一个用户所做的更改相同时,第一个用户可能无法“看到”表中的实际值从第一个用户使用相同的行到保存更改之间的时间。

谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。