我正在尝试为我的数据库课程建模事务数据库。在使用元组进行更新后,我找不到如何解锁元组。
我已经使用了提交,并假定这会释放排他锁,但不会。
START TRANSACTION;
BEGIN;
SELECT * FROM account WHERE account_num = 3 FOR UPDATE;
UPDATE account SET balance= balance + 100 WHERE account_num = 3;
COMMIT;
我应该怎么做才能确保释放此独占锁?
答案 0 :(得分:0)
START TRANSACTION
和BEGIN
是同义词;请勿同时使用。
除非您正在事务中执行其他操作,否则不需要SELECT
,也不需要事务。 UPDATE
将在UPDATE
的持续时间内锁定该行。