Как закрыть возвращающийся курсор в PL / SQL?

Я новичок в PL / SQL и только что изучил курсоры в процессе обучения. Я видел параметры хранимых процедур с типом OUT SYS_REFCURSOR , который, насколько я понимаю, его цель - «возвращать данные», как указатель в языке C. Мне было интересно, кто будет закрывать такой параметр SYS_REFCURSOR , если процедура должна его открыть и не может закрыть? (Если процедура закрывает out OUT SYS_REFCURSOR , тогда не будет никаких данных для возврата.)

Кроме того, я думаю, что полагаться на внешние функции, кроме хранимой процедуры, содержащей OUT SYS_REFCURSOR параметр, чтобы закрыть курсор. Есть ли способ вернуть таблицу из хранимой процедуры без использования курсоров?

6
задан Sathyajith Bhat 26 May 2011 в 05:45
поделиться