Oracle SQL. Как вывести более одного объекта?
У меня есть два стола. Модели и автомобили. И процедура, которая экспортирует все модели с именем, которое вводит пользователь, и их ценой(хранится в автомобилях).
Что я уже пробовал:
create or REPLACE procedure modelzz( VAR_MODEL IN MODELS.NAME_MODEL%TYPE, VAR_PRICE OUT AUTOMOBILES.A_PRICE%TYPE ) as begin SELECT a.A_PRICE INTO VAR_PRICE FROM AUTOMOBILES a join MODELS m on a.MODELS_ID_MODEL=m.ID_MODEL where m.NAME_MODEL=VAR_MODEl; dbms_output.put_line(VAR_MODEL||'''s price is : '||VAR_PRICE);end;
начало процедуры:
var v_modelzz varchar2; exec modelzz('&model_name',:v_modelzz);
Проблема в том, что я хочу экспортировать все записи для определенной модели. Их больше, чем одна, одна модель может иметь две или более записей.
Вот в чем ошибка: точная выборка возвращает больше запрошенного количества строк
Kornfeld Eliyahu Peter
Не используйте параметр OUT, а простой оператор SELECT внутри процедуры...
Jörgen Andersson
Он использует Oracle, а не Sql Server
Jörgen Andersson
Вам нужно вывести тип коллекции, массив или курсор.