ORACLE中游标和COMMIT的问题

tongtian245 tongtian245 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
假设有下面的逻辑
 DECLARE 
CURSOR EMP_CURSOR SELECT * FROM TEST; --TEST(ID,NAME,SAL),ID为主键
BEGIN
OPEN EMP_CURSOR
LOOP
FETCH EMP_CURSOR INTO V_ID,V_NAME,V_SAL;
EXIT WHEN EMP_CURSOR%NOTFOUND;
UPDATE TEST SET SAL=SAL+100 WHERE ID=V_ID;
COMMIT; -----------第一个
END LOOP;
CLOSE EMP_CURSOR;
--COMMIT; -----------第二个
END;

COMMIT写在第一个地方和第2个地方有什么区别?????
是不是说写在第一个地方 就是 每更新一行 COMMT后就释放资源,并将更新后的数据永久保存??第二个地方是说
更新完所有的行后,释放资源,并将更新后数据永久保存???

俩者哪个性能更好???????????????????
...全文

相关推荐

评论 9
收藏 已收藏
分享
返回顶部
tongtian245
Oracle 17,133 成员 55,258 内容