我想在更新之前更新表格中的一行,是否需要检查每列中是否有任何更改?
答案 0 :(得分:0)
在MySQL中,您无需检查值。如果没有变化,MySQL不会更新记录。这意味着MySQL不会产生记录或写入数据的开销。检查是否有任何值发生变化需要付出轻微的代价,我认为它确实会运行触发器。
其他数据库表现不同。
这是在文档中的一个神秘位置,其中描述了mysql_affected_rows()
:
对于UPDATE语句,默认情况下受影响的行值为 实际更改的行数。
。 。 。
大于零的整数表示受影响的行数或 检索。零表示没有更新UPDATE的记录 语句,没有与查询中的WHERE子句匹配的行或没有 查询尚未执行。
答案 1 :(得分:0)
这完全取决于你手头检查是否有任何东西在那里。您可以根据单行,多行或全部更新进行更新。
更新特定行的示例如下:
UPDATE your_table
SET Username='TestName123'
WHERE UserID='12486';
您将更改用户ID为12486的用户名
或者您可以使用您想要的数据更新所有行
UPDATE Customers
SET Country='USA'
这会更新每条记录,使Country列填充USA。