问题描述
我正在使用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 (将#修改为@)