Oracle Loop 循环的一个赋值坑
短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
PROCEDURE test
IS
comp_return_rec_ m_purchase_comp_return_tab%Rowtype;
barcode_hist_rec_ m_barcode_inv_tran_hist_Tab%ROWTYPE;
--
CURSOR get_comp_return IS
SELECT *
FROM m_purchase_comp_return_tab m;
--
CURSOR get_barcode_hist IS
SELECT m.*
FROM m_barcode_inv_tran_hist_Tab m , m_barcode_status_tab n
WHERE n.barcode_no = m.barcode_no
AND n.co_order_no = comp_return_rec_.bill_no
AND n.co_line_no = comp_return_rec_.item_seq_no
AND n.source = "采购订单";
BEGIN
OPEN get_comp_return;
LOOP
FETCH get_comp_return INTO comp_return_rec_ ;
EXIT WHEN get_comp_return%NOTFOUND;
barcode_hist_rec_.barcode_no := null;
OPEN get_barcode_hist;
FETCH get_barcode_hist INTO barcode_hist_rec_;
CLOSE get_barcode_hist;
IF barcode_hist_rec_.barcode_no IS NOT NULL THEN
UPDATE m_purchase_comp_return_tab m SET m.barcode_created_flag = 2
WHERE m.bill_no = comp_return_rec_.bill_no
AND m.item_seq_no = comp_return_rec_.item_seq_no ;
END IF ;
END LOOP;
CLOSE get_comp_return;
END test;
loop 的话空值时不会赋值的
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341