переменный тип результата из функции

Bucher
Дата: 03.12.2009 17:41:30
Подскажите как описать выходную переменную в функции, чтобы она могла возващать любой тип данных (number,varchar и date).
s u
Дата: 03.12.2009 17:49:42
а входные переменные всегда одного типа?
vava
Дата: 03.12.2009 17:52:44
Может воспользоваться тем же подходом что и в variant? :
function my_func(m_num out number,m_str out varchar2,m_dat out date) return number;

а потом в вызывающем коде делать так:

mx number;
my varchar2(256);
mz date;

begin 

t:=my_func(x,y,z);
if t=1 then 
mx:=x;
elsif t=2 then 
my:=y;
elsif t=3 then
mz:=z;
end if;
Bucher
Дата: 03.12.2009 17:56:23
s u,

Да, входные переменные определяют какой тип результата будет возвращен функцией.
Bucher
Дата: 03.12.2009 17:57:09
vava,

Собственно так сейчас и предполагается сделать, но хочется более красивое решение через одну выходную переменную.
Andrey.L
Дата: 03.12.2009 17:58:09
Bucher,

ANYDATA
s u
Дата: 03.12.2009 18:06:01
Bucher
s u,

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


каким образом?

function a (in_param date) return date
function a (in_param number) return number 
function a (in_param varchar2) return varchar2
tru55
Дата: 03.12.2009 18:06:46
Bucher
s u,

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


Почитай про Overloading
s u
Дата: 03.12.2009 18:08:45
tru55,

см мой пост выше.
из поста автора не понятно: ДА - одного типа или все-таки определяют возращаемый тип
Bucher
Дата: 03.12.2009 18:21:40
Andrey.L
Bucher,

ANYDATA


Если не сложно, приведите, пожалуйста, пример.