Я следующий оракул хранимая процедураКак работают хранимые процедуры оракула (w/cursors)?
CREATE OR REPLACE
PROCEDURE getRejectedReasons
(
p_cursor IN OUT SYS_REFCURSOR)
AS
BEGIN
OPEN p_cursor FOR SELECT * FROM reasons_for_rejection;
END;
Однако, когда я запускаю эту хранимую процедуру в SQL-разработчика, то я не вижу ничего. Я просто вижу что-то вроде этого:
Connecting to the database oracleLocal.
Process exited.
Disconnecting from the database oracleLocal.
Иду с сервера SQL MS, и я привык видеть реальные результаты при выполнении хранимой процедуры, как это. Эта хранимая процедура не возвращает результаты, потому что я использую курсор?
как я могу «заранее» курсор, чтобы он показывал мне результаты, когда я его выполняю. – 2009-05-03 17:01:58
Ну, нет. То есть, вся точка курсора состоит в том, чтобы указать одну строку за раз, а не целый набор результатов из множества строк. Вы можете перебрать его с помощью «для rec в петле p_cursor» «end loop;» –
tpdi
ok, я буду использовать эту хранимую процедуру в файле iBatis с java-кодом. Так что я думаю, что я могу получить весь курсор, а затем зациклиться на нем – 2009-05-03 17:33:38