SQL正在更新安全的记录线程

时间:2018-06-01 02:19:58

标签: sql sql-update thread-safety

我正在使用访问数据库的服务器。多人可以访问同一记录。每个请求都会排队等待,还是会同时尝试修改该记录。

实施例: 我有一个图像,数据库将跟踪有多少"喜欢"那个图像有。

UPDATE `images` SET `image_likes` = `image_likes` + 1 WHERE `image_id` = 0;

假设特定图像有0"喜欢"和3个人在同一时间"喜欢"该图像,这3个请求是否会被正确处理,导致该图像有3个喜欢,或者是否有可能损坏记录,或者至少是不正确的,可能只显示2"喜欢&#34 ;

我的数据库使用MyISAM引擎,我通过GoDaddy使用它。

谢谢

1 个答案:

答案 0 :(得分:1)

Php本身并不是线程安全的,但MySQL是,在这种情况下,MySQL将处理这个问题,你会得到3个喜欢。除非涉及任何其他操作,否则这不应成为问题

您可以尝试通过控制台多次调用该脚本来查看发生的情况