Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Базы данных > SQL
Перезагрузить страницу SQL/Pl - вывод таблицы через функцию
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Alex_Axel Alex_Axel вне форума
Новичок
 
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 29.06.2011
По умолчанию SQL/Pl - вывод таблицы через функцию - 29.06.2011, 22:46

Здравствуйте, у меня маленький вопрос, а точнее мне нужна команда, которая через функцию выводит данные таблицы. а т.е. вот у меня есть код функции и прилежащих к ней таблицы и последовательности:

CREATE SEQUENCE www
START WITH 1
INCREMENT BY 1;

CREATE TABLE iii(
id NUMBER,
product VARCHAR2(15),
price NUMBER);
insert into iii values (www.nextval, '1', 2000);
insert into iii values (www.nextval, '4s', 1000);
insert into iii values (www.nextval, '3', 5000);
insert into iii values (www.nextval, 'qwe', 2500);

create or replace function GET_ITEM(product_new in varchar2) return number is
v_id iii.id%TYPE;
v_product iii.product%TYPE;
BEGIN
SELECT id, product INTO v_id, v_product FROM iii WHERE product=product_new;
return v_id;
EXCEPTION
WHEN NO_DATA_FOUND THEN
INSERT INTO iii (id, product, price) VALUES (www.NEXTVAL, product_new, 2000);
return v_id;
END GET_ITEM;
/

SET SERVEROUTPUT ON;
BEGIN
DBMS_OUTPUT.put_line(GET_ITEM('4s') );
END;
/

функция рабочая, всё работает, вдумываться что она делает необязательно, но если интересно, то она добавляет запись в таблицу если такой записи, как в параметре при выводе функции, нет.

Мне же нужно чтобы сразу же выводились данные таблицы iii. Как мне сказал человек давший это задание, здесь нужна всего одна строка. Конечно можно после этого кода написать:

select * from iii;

и таблица выведется. (выводиться всё верно, но суть задачи как уже понятно не в этом)
Но нужно чтобы был тот же результат без этой строки. Другими словами, что то нужно написать то ли в тело функции, то ли в последней части кода:

"SET SERVEROUTPUT ON;
BEGIN
DBMS_OUTPUT.put_line(GET_ITEM('4s') );
END;"

Подскажите как быть, а то самую основную часть (саму функцию) я написал, а вот с этой деталью разобраться никак не могу. Спасибо!
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод данных через периферию tviktor Железо. Написание драйверов 14 23.03.2011 23:42
Вывод звука через другой выход Tibereum Звук и акустические системы 1 03.03.2009 23:42
Вывод таблицы на печать в Worde bango Вопросы начинающих программистов 4 23.11.2008 22:33
Задание рамки у ячейки таблицы через OlePropertyGet AlexP C++ Builder 9 12.05.2008 15:58
Вывод информации через видио режим catHD C++ Builder 11 29.06.2007 12:15
ПРОИЗВОДИТЕЛЬНОСТЬ + вывод html через рнр imported___art__ PHP 1 22.06.2006 01:30
Вывод таблицы на форму Voin C++ Builder 4 09.06.2006 16:11
Вывод матрицы в таблицы Alexcorp Pascal 3 22.04.2006 02:11
вывод html-документа через переменную pampushechca PHP 2 17.11.2004 16:38
Вывод сообщений через написанную программу Gold_Dreamer Delphi 0 25.08.2004 11:50
Вывод данных из таблицы Fl@sh PHP 5 09.06.2004 18:20
Вывод данных через USB Воха C++ Builder 6 05.04.2004 23:06



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов