如果数据不变,您是否需要更新数据

时间:2018-06-11 11:23:33

标签: mysql sql database sql-update

我想在更新之前更新表格中的一行,是否需要检查每列中是否有任何更改?

2 个答案:

答案 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。