样例代码
传入V_PATIENT_CODE; 返回查找到的第一条数据
CREATE OR REPLACE PROCEDURE SKINTEST_RESULT
(
V_PATIENT_CODE IN varchar2,-- IN 表示输入 后面写类型
V_ST_RESULT OUT sys_refcursor -- OUT 表示返回值 后面写类型
)
AS
BEGIN
-- open 表示打开游标,然后写循环
OPEN V_ST_RESULT FOR
-- 一个查询语句 有;结尾
SELECT * FROM
(
SELECT A.*
FROM SKINTEST_INFO A
WHERE A.STATUS = 1
AND A.PATIENT_CODE = V_PATIENT_CODE
) WHERE ROWNUM =1;
END;
注释:sys_refcursor 是游标,概念类似C中的指针,配合open通过指针后移遍历数据;如果是做过程内遍历的话常用cursor
存储过程里还常用if-elseif以及内部的foreach结构,后续用到会写样例记录