我对此有这样的疑问: 当两个用户点击书籍按钮时,在同一毫秒内,MySQL数据库会进行双重输入。如何避免向数据库添加双重数据?MySQL在避免重复输入时,同时输入2条相同记录
参考文献: 后端:PHP 前端:HTML/CSS/JS
我试图给执行入口语句之前随机中断。
例如:当用户按下:现在预订时,我会阻止下一个过程几秒钟。然后让它继续向MySQL插入数据。
但这似乎是不好的做法。
我可以知道解决此问题的更好方法吗?
编辑:例如,我有一个剧院预订系统。情况是:两个或两个以上的用户同时预订同一个插槽并将其预订。而其中一个应该获得成功,其余的应该会得到一个错误。
如果您在数据库表中使用主键,MySQL将不会**创建重复条目。它只会执行两个查询中的一个,另一个会失败,即使它们在确切的时间被发送到数据库。 – Aziz
感谢您的回复。例如,我有一个剧院预订系统。会发生什么情况是,两个用户同时预订同一个插槽并将其预订。而其中一个应该会出错。 – Smit
如果你的数据库设计正确,这不应该发生。例如,如果您使用表格预订时间段,其中主键是日期和时间,那么您不能在同一个时间段中在该表中有两个条目。 – Aziz