Oracle中的动态表,列和值

时间:2018-11-12 22:31:41

标签: sql oracle dynamic

我需要提供表名,列名和列值 在Oracle函数中动态运行。 我已经在Oracle函数中编写了示例代码,但是它不是动态的。

任何人都可以帮助使以下代码动态化,以便可以动态传递表名,列名和列值吗?

Select test_emp_name ('Table name' , 'Column name' , 'column_value');

CREATE OR REPLACE FUNCTION test_emp_name (
     column_value IN VARCHAR2
) RETURN VARCHAR2 IS
     variable_1   VARCHAR2(100);
     variable_2    VARCHAR2(100);
     variable_3    VARCHAR2(100);
BEGIN
     SELECT  max(Emp_Name)
       INTO variable_1
     FROM Employee_Table
     where Emp_Name = column_value

     variable_2 := SUBSTR( variable_1, 1,10 );
     variable_3 := SUBSTR( variable_1, 1,10  );

     RETURN         
       variable_2||variable_3;
EXCEPTION
 WHEN no_data_found THEN
     RETURN 'nothing found';
END;

0 个答案:

没有答案