Oracle 函数中动态执行语句

Posted 特立独行的猪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle 函数中动态执行语句相关的知识,希望对你有一定的参考价值。

函数:
1
create or replace function fn_test(tablename in varchar2) return number is 2 sqls varchar2(100); 3 rtn number(10):=0; 4 begin 5 --获取学生表的记录条数 6 --select count(*) into rtn from student; 7 8 sqls:=\'select count(*) from \' || tablename; 9 execute immediate sqls into rtn; 10 dbms_output.put_line(\'记录条数 rtn=\'|| rtn); 11 return(rtn); 12 end fn_test;

SQL:

1 select fn_test(\'student\') from dual;

 注意项:在拼接SQL语句的时候,查询语句 from 关键字与要拼接的表名之间必须要记得加空格。

以上是关于Oracle 函数中动态执行语句的主要内容,如果未能解决你的问题,请参考以下文章

如何在oracle存储过程中执行动态sql语句

Oracle Decode()函数和CASE语句的比较

Oracle 动态SQL语句

是否可以动态编译和执行 C# 代码片段?

Oracle 执行动态语句

oracle执行动态sql选择脚本并返回表格数据