توضیحات
از دستور cursor for loop برای fech کردن و انجام دستور به ازای همه رکوردهای یک cursor استفاده میشود.دستور
دستور برای cursor for loop به صورت زیر نوشته میشود:
1
2
3
4 |
FOR record_index in cursor_name LOOP {...statements...} END LOOP; |
مثال
مثالی از یک تابع که از cursor for loop استفاده میکند:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 |
CREATE OR REPLACE Function TotalIncome ( name_in IN varchar2 ) RETURN varchar2 IS total_val number(6); cursor c1 is SELECT monthly_income FROM employees WHERE name = name_in; BEGIN total_val := 0; FOR employee_rec in c1 LOOP total_val := total_val + employee_rec.monthly_income; END LOOP; RETURN total_val; END ; |