Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我已经制作了一个剧院门票预订网站(用户-> 预订和支付/管理员-> 从网络界面管理销售)。我使用 mysql 数据库中的一个表来处理票:每一列是特定的一天,这一天的每一行都是一个布尔值,用于知道哪个座位被预订(1 表示已预订,0 表示免费)。但是我想改进这个系统,并在用户当前在线预订并且尚未付款(最终确定订单)时设置第三种状态,以防止其他用户预订他的座位。那么,有没有办法在门票表中仅在有限的时间内(大约 15 分钟)保存第三个状态(例如 -1)?
先感谢您
将onInsert/onUpdate触发器与SLEEP(<seconds>).
onInsert/onUpdate
SLEEP(<seconds>)
更新:
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; -> //
请注意,触发器只能从根设置。