Oracle基础语法汇总(六)
点击蓝色字关注“SQL数据库运维”,回复“SQL”获取2TB学习资源!
既往文章链接(点击即可跳转):
Oracle基础语法汇总(一)
Oracle基础语法汇总(二)
Oracle基础语法汇总(三)
Oracle基础语法汇总(四)
Oracle基础语法汇总(五)
行级锁的例子:
-- 启动第一个会话,开启事务并查询某行数据
BEGIN TRANSACTION;
SELECT * FROM your_table WHERE condition = value FOR UPDATE;
-- 在第一个会话中,此时对该行的操作(如UPDATE、DELETE)将阻塞,直至第一个事务提交或回滚
-- 启动第二个会话,尝试更新或删除第一个会话锁定的行
UPDATE your_table SET column = value WHERE condition = value;
-- 或
DELETE FROM your_table WHERE condition = value;
-- 在第二个会话中,上述更新或删除操作将会阻塞,直至第一个事务提交或回滚
-- 第一个会话提交或回滚事务
COMMIT; -- 或者 ROLLBACK;
-- 第二个会话中的更新或删除操作将执行,因为行级锁已被释放