【发布时间】:2016-05-06 21:21:19
【问题描述】:
我想创建一个返回 data_byte 的函数,稍后我可以在 rpad 函数中使用它。这是我提出的上一个问题,我得到了有用的答复。 function that return data type that can be used in SQL(oracle)
这是我添加的当前功能代码:
create or replace FUNCTION get_data(tab_name in varchar2, column_name in varchar2) return number
is
return_val NUMBER;
str varchar2(1000) := 'select data_length from user_tab_columns where table_name = ' || ''''||tab_name||''''|| ' and column_name = ' || '''' || column_name || '''';
begin
dbms_output.put_line(str);
execute immediate(str);
return(return_val);
end;
/
select get_data('EMPLOYEES', 'SALARY') from dual;
我牢记函数需要返回类型。成功编译函数后,我尝试从dual中选择它,我得到了NULL值。我希望它为我返回 22,但我只得到了空值。那是因为我的返回类型错误吗?或者我应该如何解决它。
【问题讨论】: