示例我有一个存储的pl / sql
CREATE OR REPLACE PROCEDURE number( test in NUMBER )
........
// rest of code
不可能我不想运行此执行
execute number(2);
我想用
运行select * from number(2);
无法使用select语句运行存储的pl / sql脚本来调用函数而不是执行?
答案 0 :(得分:4)
您无法从SQL执行PROCEDURE;但是,你可以从SQL执行一个FUNCTION。
首先,将NUMBER重新定义为功能:
CREATE OR REPLACE FUNCTION NUMBER(pTest IN NUMBER) RETURN NUMBER IS
someValue NUMBER := pTest * 100;
BEGIN
-- whatever
RETURN someValue;
END;
然后从SELECT语句执行它
SELECT NUMBER(2) FROM DUAL;
分享并享受。