Что эквивалентно Oracle REF CURSOR в Postgresql при использовании JDBC? - PullRequest
0 голосов
/ 18 сентября 2008

В Oracle я могу объявить курсор ссылки ...

TYPE t_spool IS REF CURSOR RETURN spool%ROWTYPE;

... и использовать его для передачи курсора в качестве возвращаемого значения ...

FUNCTION end_spool
    RETURN t_spool
    AS
    v_spool t_spool;
    BEGIN
        COMMIT;
        OPEN v_spool FOR
            SELECT
                *
            FROM
                spool
            WHERE
                key = g_spool_key
            ORDER BY
                seq;
        RETURN v_spool;
    END end_spool;

... и затем захватить его как набор результатов, используя JDBC ...

private Connection conn;
private CallableStatement stmt;
private OracleResultSet rset;
[...clip...]
stmt = conn.prepareCall("{ ? = call " + call + "}");
stmt.registerOutParameter(1, OracleTypes.CURSOR);
stmt.execute();
rset = (OracleResultSet)stmt.getObject(1);

Что такое эквивалент в Postgresql?

1 Ответ

3 голосов
/ 18 сентября 2008

Может быть, это поможет: http://jdbc.postgresql.org/documentation/83/callproc.html#callproc-resultset-setof

Я не особо с этим сталкивался: P

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...