当前位置:首页 > 软件开发 > 正文

oracle存储过程查询(oracle查找存储过程用到的表)

oracle存储过程查询(oracle查找存储过程用到的表)

老铁们,大家好,相信还有很多朋友对于oracle存储过程查询和oracle查找存储过程用到的表的相关问题不太懂,没关系,今天就由我来为大家分享分享oracle存储过程查...

老铁们,大家好,相信还有很多朋友对于oracle存储过程查询和oracle查找存储过程用到的表的相关问题不太懂,没关系,今天就由我来为大家分享分享oracle存储过程查询以及oracle查找存储过程用到的表的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

oracle怎么执行存储过程跟函数

调用oracle存储过程用begin...end的方式。

基本语法:

begin存储过程名(参数1,参数2……);--如果无参数则省略括号及括号内部分end;

如,有存储过程:

createorreplaceprocedurep_testasv_begintimevarchar2(20);v_endtimevarchar2(20);v_strvarchar2(10);beginv_begintime:=to_char(sysdate,'yyyy-mm-ddhh24:mi:ss');select'badkano'intov_strfromdual;v_endtime:=to_char(sysdate,'yyyy-mm-ddhh24:mi:ss');dbms_output.put_line('开始时间为:'||v_begintime);dbms_output.put_line('结束时间为:'||v_endtime);end;

执行:beginp_test;end;

oracle存储过程,描述正确的

我的回答:oracle存储过程是编译好的并且存储在数据库服务器中的程序代码。存储过程有名字及自己的参数,但是存储过程没有返回值。一个存储过程就是一组命名的PL/SQL语句。

在oracle中如何查看存储过程创建信息

ELECT*FROMALL_SOURCEwhereTYPE='PROCEDURE'ANDTEXTLIKE'%0997500%';--查询ALL_SOURCE中,(脚本代码)内容与0997500模糊匹配的类型为PROCEDURE(存储过程)的信息。根据GROUPBYTYPE该ALL_SOURCE中只有以下5种类型1FUNCTION2JAVASOURCE3PACKAGE4PACKAGEBODY5PROCEDURE

oracle存储过程中查询动态表名

先建立结果表,也就是存放你最终结果的表

createtabletest

(avarchar2(100),

bvarchar2(100));

然后建立存储过程

createprocedurep_insert

as

cursorcur_tbnameis

select'insertintotestselectcol1,col2from'||table_name

fromuser_tableswheretable_namelike'AA____BB';--这个位置的表名必须大写的A和B,col1和col2换成你实际的字段名称

begin

opencur_tbname;

loop

fetchcur_tbnameintov_sql;

exitwhencur_tbname%notfound;

executeimmediatev_sql;

commit;

endloop;

end;

我最终没测试,你自己测试一下,看哪有问题吧

oracle的存储过程查询整张表返回结果

创建返回结果集的函数SQL>createorreplacepackagepkg_HelloWorldas2--定义refcursor类型3typemyrctypeisrefcursor;4--函数申明5functiongetHelloWorldreturnmyrctype;6endpkg_HelloWorld;7/程序包已创建。SQL>CREATEORREPLACEpackagebodypkg_HelloWorldas2functiongetHelloWorldreturnmyrctype3IS4return_cursormyrctype;5BEGIN6OPENreturn_cursorFOR7SELECT'Hello

1'ASa,'World1'ASBFROMdual8UNIONALL9SELECT'Hello

2'ASa,'World2'ASBFROMdual;10returnreturn_cursor;11ENDgetHelloWorld;12endpkg_HelloWorld;13/程序包体已创建。注:Oracle这里的函数,是一个返回游标类型的函数,不是像SQLServer的那种叫“表值函数”的东西。因此下面的写法会报错。SQL>SELECT*FROMpkg_HelloWorld.getHelloWorld();SELECT*FROMpkg_HelloWorld.getHelloWorld()*第1行出现错误:ORA-00933:SQL命令未正确结束SQL>SELECTpkg_HelloWorld.getHelloWorld()FROMdual;PKG_HELLOWORLD.GETHE--------------------CURSORSTATEMENT:1CURSORSTATEMENT:1AB--------------Hello1World1Hello2World2

OK,本文到此结束,希望对大家有所帮助。

最新文章