游标类型

最近更新时间: 2025-10-11 18:10:00

postgres=# CREATE OR REPLACE PROCEDURE p_refcursor (a_ref refcursor) AS
$$
DECLARE
    v_rec record;
BEGIN
    OPEN a_ref FOR SELECT * FROM t LIMIT 1;
    FETCH a_ref INTO v_rec;
    RAISE NOTICE 'v_rec = % ',v_rec;
END;
$$
LANGUAGE PLPGSQL;
CREATE PROCEDURE
postgres=# CALL p_refcursor('a');
NOTICE:  v_rec = (1,Tbase) 
CALL
postgres=#