数据不变时是否需要更新

q35jwt9p  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(258)

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

pbpqsu0x

pbpqsu0x1#

在mysql中,不需要检查值。如果没有更改,mysql不会更新记录。这意味着mysql不会产生记录或写入数据的开销。检查是否有任何值发生了变化需要花费一点成本,我认为它确实运行了触发器。
其他数据库表现不同。
这是在一个神秘的位置在文件中,其中 mysql_affected_rows() 描述如下:
对于update语句,默认情况下,“受影响的行”值是实际更改的行数。
. . .
大于零的整数表示受影响或检索到的行数。零表示没有更新update语句的记录,没有与查询中where子句匹配的行,或者还没有执行任何查询。

6jygbczu

6jygbczu2#

这完全取决于你是否有任何东西在手之前检查。可以基于一行、多行或所有行进行更新。
更新特定行的示例如下:

UPDATE your_table
SET Username='TestName123'
WHERE UserID='12486';

您将更改用户名的位置,其中userid为12486
或者你可以用你想要的数据更新所有的行

UPDATE Customers
SET Country='USA'

这将更新每个记录,使国家栏填写usa。

相关问题