oracle 存储过程两个for循环 怎么写
展开全部
这种情况必须定义行类型的变量来解决:
declare
row_data tb_student%ROWTYPE
for row_data in tb_student loop
update student st set st.class_name = row_data.class_name
where st.class_id = row_data.class_id
end loop;
但这样种循环更新效率确实很拦轿肆低,SQL是面向集合的运算,像你帆型这种需求可以用一条更新SQL外加子查询来解决,不建议用循环来做简轿。
declare
row_data tb_student%ROWTYPE
for row_data in tb_student loop
update student st set st.class_name = row_data.class_name
where st.class_id = row_data.class_id
end loop;
但这样种循环更新效率确实很拦轿肆低,SQL是面向集合的运算,像你帆型这种需求可以用一条更新SQL外加子查询来解决,不建议用循环来做简轿。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询