我已经创建了一个电影票预订网站(用户->预订和支付/管理->管理从and界面销售)。我使用mysql数据库中的一个表来处理门票:每一列都是特定的一天,这一天的每一行都是一个布尔值,用来知道哪个座位已预订(1表示已预订,0表示免费)。但我想改进这个系统,当用户当前在线预订并且还没有付款(最终订单)时,我想要有第三个状态,以防止其他用户预订他的座位。那么,有没有办法在tickets表中仅在有限的时间(大约15分钟)内保存这第三个状态(例如-1)?
提前谢谢你
发布于 2012-11-26 05:43:21
对SLEEP(<seconds>)使用onInsert/onUpdate触发器。
更新:
mysql> delimiter //
mysql> CREATE TRIGGER ins_trig BEFORE INSERT ON tickets
-> FOR EACH ROW
-> BEGIN
-> DO SLEEP(60000);
-> UPDATE tickets SET status=1 WHERE id = NEW.id;
-> END;
-> //请注意,触发器只能从root设置。
https://stackoverflow.com/questions/13555774
复制相似问题