oracle中建存储过程
作者:烟栀发布时间:2023-02-14浏览:460
楼主的要求,简单的查询处理就可以啦.
SELECt
*
FROM
article
WHERe
Published >= TO_DATE('2010-07-01', 'YYYY-MM-DD')
AND Published <= TO_DATE('2010-09-01', 'YYYY-MM-DD')
=====================================
如果一定要写个存储过程,方便以后调用的话.
参考下面的 HelloWorld 的例子:
对于 Oracle 需要通过 返回一个游标来处理。
SQL> create or replace package pkg_HelloWorld as
2 -- 定义ref cursor类型
3 type myrctype is ref cursor;
4 --函数申明
5 function getHelloWorld return myrctype;
6 end pkg_HelloWorld;
7 /
Package created.
SQL> CREATE OR REPLACE package body pkg_HelloWorld as
2 function getHelloWorld return myrctype
3 IS
4 return_cursor myrctype;
5 BEGIN
6 OPEN return_cursor FOR 'SELECT ''Hello'' AS a, ''World'' AS B FROM dual
';
7 return return_cursor;
8 END getHelloWorld;
9 end pkg_HelloWorld;
10 /
Package body created.
SQL> SELECt pkg_HelloWorld.getHelloWorld FROM dual;
GETHELLOWORLD
--------------------
CURSOR STATEMENT : 1
CURSOR STATEMENT : 1
A B
---------- ----------
Hello World
注意:这个例子, 是一个 Oracle 的Package 下的 函数, 返回的是 结果集合。