Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Oracle 8i Table Cast  [new]
rkv12
Member

Откуда:
Сообщений: 1
Добрый день!

Вопрос такой:
Нужно сделать сортировку коллекции по определенному полю, делаю следующее:

-- Created on 27.04.2006 by KIRILL 
declare

v_id Number(3);
v_cnt NUMBER(3);

type t_id_cnt iS RECORD (
id v_id%TYPE,
cnt v_cnt%TYPE );

type t_arr_id_cnt is TABLE OF t_id_cnt;
arr_id_cnt t_arr_id_cnt := t_arr_id_cnt();
begin
arr_id_cnt.EXTEND;
arr_id_cnt(arr_id_cnt.LAST).id := 1;
arr_id_cnt(arr_id_cnt.LAST).cnt := 1;
arr_id_cnt.EXTEND;
arr_id_cnt(arr_id_cnt.LAST).id := 2;
arr_id_cnt(arr_id_cnt.LAST).cnt := 2;

FOR rec IN ( select id, cnt from TABLE( CAST ( arr_id_cnt AS t_arr_id_cnt ) ) order by cnt desc)
LOOP
DBMS_OUTPUT.put_line('- ID: ' || rec.id || ' CNT: ' || rec.cnt);
EXIT;
END LOOP;
end;

На что вылезает ошибка ORA-03113. В чем может быть дело?
28 апр 06, 12:21    [2613565]     Ответить | Цитировать Сообщить модератору
 Re: Oracle 8i Table Cast  [new]
Denis Popov
Member

Откуда: Санкт-Петербург
Сообщений: 7862
Это пройдет для объектных таблиц. А так: Есть ли чтонибудь для сортировки коллекций?
28 апр 06, 13:29    [2613983]     Ответить | Цитировать Сообщить модератору
 Re: Oracle 8i Table Cast  [new]
ten
Member

Откуда: Екатеринбург
Сообщений: 1672
как минимум: Для использования в DML тип должен быть объявлен не в PL/SQL, а создан прямо в базе.
28 апр 06, 13:58    [2614132]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить