Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想创建一个存储过程,它将返回 Oracle 数据库中表中的所有行(几乎只是一个 select * from)。我已经看到以前的帖子建议创建一个函数或一个包含过程的包,但如果可能的话,我会追求一个独立的过程。
非常感谢。
存储过程不返回任何东西(函数返回一些东西)。存储过程可以有OUT参数
OUT
CREATE OR REPLACE PROCEDURE getAllEmps( p_rc OUT sys_refcursor ) AS BEGIN OPEN p_rc FOR SELECT * FROM emp; END;
虽然你当然可以做这种事情,但这是一种相对不寻常的方式来构建你的代码。在真实系统中,您几乎永远不会希望在包之外拥有独立的过程。