我有 Oracle DB 10g,我创建了一个设置表,其中包含我的应用程序函数和每个函数变量。
我需要在运行时将变量值插入到调试表中,因此我在第一个表中定义了我需要将它们插入调试表中的变量名称。
例如,我需要插入名为L_sEmpSalary
.
问题是我正在从名为 example 的变量中的设置表中获取变量名L_sVarName
。该变量L_sVarName
现在包括L_sEmpSalary
我想在数据库中插入它的值的变量
所以我需要获取一个L_sEmpSalary
存储在 variable 中的变量值L_sVarName
。
以下是示例代码:
declare
L_sEmpSalary Number :=500;
Sql_Statment Varchar2(500);
Begin
For Rec In GetVars Loop
L_sVarName:=Rec.Var_Name;
/* L_sVarname is Holding now variable 'L_sEmpSalary' which i need to get it's value which is 500*/
Sql_Statment:= ' select :var from dual ';
EXECUTE IMMEDIATE Sql_Statment into L_sVarValue using L_sVarName;
DBMS_OUTPUT.PUT_LINE ( 'Var value = '||L_sVarValue);
End Loop;
end;
我试过 DBMS_SQL 但没有运气,有什么想法吗?
提前致谢