пробовал и так, все равно говорит:"Неверное использование типа ЛОНГ"
Сначала:
create or replace function Make_Def_Val
(
p_str_date in long
)
return varchar
is
l_result varchar(100);
l_ser varchar(100);
begin
l_ser := p_str_date;
execute immediate 'select '||l_ser||' from dual' into l_result;
return l_result;
exception
when others then
return l_ser;
end;
потом
create table aaa(a long);
insert into aaa values('to_date(''05.12.2007'',''dd.mm.yyyy'')');
и далее
select make_def_val(a) from aaa
Попробуйте