gpt4 book ai didi

php - mysql并发请求问题

转载 作者:行者123 更新时间:2023-11-29 15:09:54 25 4
gpt4 key购买 nike

我遇到以下问题

function book($memberid, $classid){
if (!book){
// update the db and change the book variable to true
}
}

我的问题是同时提交了 2 个请求。第一个请求通过 if (!book){ 行,但尚未更新数据库。与此同时,第二个请求运行相同的函数,并传递 if (!book){ 行。因此,结果是错误的。

我想知道如何解决这个并发问题。锁定数据库?但恐怕会影响性能。

最佳答案

为什么需要这个变量?

解决更新数据库时并发问题的标准方法是让数据库通过事务的方式来处理它(这在某些情况下会影响性能,但仅代码解决方案也会影响性能)。

我想看看 if (!book) 子句里面的内容。

编辑:为什么不更改数据库以使(人,类)组合成为唯一键?这样,您实际上就无法在表中插入两次相同的值。我仍在进行疯狂的猜测,因为这取决于数据库的结构。 MySQL 还有一种特殊的语法来执行条件插入,这很适合这里。检查这个url .

关于php - mysql并发请求问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1054566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com