在Oracle游标循环内给变量赋值通常是通过FETCH语句获取游标当前行的数据,并将其赋给相应的变量。下面是一个示例:
DECLARE cursor_name SYS_REFCURSOR; name VARCHAR2(50); age NUMBER; BEGIN OPEN cursor_name FOR SELECT employee_name, employee_age FROM employees; LOOP FETCH cursor_name INTO name, age; EXIT WHEN cursor_name%NOTFOUND; -- 在这里可以对name和age变量进行操作 -- 例如输出到屏幕上 DBMS_OUTPUT.PUT_LINE('Employee Name: ' || name || ', Age: ' || age); END LOOP; CLOSE cursor_name; END; /
在这个示例中,游标cursor_name打开并查询了employees表中的数据。在循环中,FETCH语句将游标当前行的数据赋给name和age变量,然后可以对这些变量进行各种操作。在这里,我们简单地将它们输出到屏幕上。最后,循环结束并关闭游标。