有两个语句块,执行后的结果好像是一致的,问一下大家第二个语句块中红色的部分有什么作用
declare
  cursor product_cur is 
  select * from plsql101_product;
begin
  for product_rec in product_cur
  loop
      update plsql101_product
      set product_price = (product_rec.product_price * 0.97);
  end loop;
end;
  declare
  cursor product_cur is 
  select * from plsql101_product
  for update of product_price;
begin
  for product_rec in product_cur
  loop
      update plsql101_product
      set product_price = (product_rec.product_price * 0.97)
      where current of product_cur;
  end loop;
end;的部分有什么作用