2008-09-17 10 views
0

Dans Oracle, je peux déclarer un curseur de référence ...Quel est l'équivalent du REF CURSOR d'Oracle dans Postgresql lors de l'utilisation de JDBC?

TYPE t_spool IS REF CURSOR RETURN spool%ROWTYPE; 

... et l'utiliser pour passer un curseur comme la valeur de retour ...

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; 

. ..et ensuite le capturer comme jeu de résultats en utilisant 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); 

Quel est l'équivalent dans Postgresql?

Répondre

Questions connexes