如何在数据库中进行复杂的交易?

时间:2018-01-21 14:40:18

标签: mysql sql transactions

当两个人同时订购商品(同一秒)且产品数量只有一个时,如何进行在线交易,我该如何进行交易。考虑一下我使用的是Python和MySQL(一般不一定回答)?

我不希望任何源代码只是知道技术谢谢。

2 个答案:

答案 0 :(得分:0)

在用户尝试购买东西时,您可以在同一交易中在UPDATE之前执行SELECT。这样你的第二个用户就会得到一条信息,表明他没有找到任何项目,因为第一个用户接受它,并且UPDATE也不会被运行。

答案 1 :(得分:-1)

我认为你不能阻止任何人看到相同的项目,但如果有人购买或点击它,你可以在更新时用表上的trnid + 1把触发器更新一列。你可以在更新的同时进行比较,如果它是同样让他把产品卖掉或者不卖。