Returns TRUE if a specified connection handle is currently connected to a data source.
FUNCTION EXEC_SQL.Is_OCA_Connection
([Connid IN CONNTYPE]
RETURN BOOLEAN;
Connid | Is the handle to the connection you want to use. If you do not specify a connection, EXEC_SQL.Default_Connection retrieves the primary Oracle Developer connection handle from the cache. |
TRUE or FALSE
PROCEDURE esmoreresultsets(sqlstr VARCHAR2) IS
conidODBC EXEC_SQL.CONNTYPE;
nRes PLS_INTEGER;
nRows PLS_INTEGER := 0 ;
curID EXEC_SQL.CURSTYPE;
BEGIN
--
-- an ODBC connection string
--
conidODBC := EXEC_SQL.OPEN_CONNECTION('connection_str_ODBC');
curID := EXEC_SQL.OPEN_CURSOR(conidODBC);
EXEC_SQL.PARSE(conidODBC, curID, sqlstr, exec_sql.v7);
nRes := EXEC_SQL.EXECUTE(conidODBC, curID);
--
-- obtain results from first query in sqlstr
--
WHILE (EXEC_SQL.FETCH_ROWS(conidODBC, curID) > 0) LOOP
nRows := nRows + 1;
...
END LOOP;
--
-- check whether this is an OCA connection. Does not continue for an Oracle
-- connection.
--
IF (EXEC_SQL.IS_OCA_CONNECTION != TRUE) THEN
TEXT_IO.PUT_LINE('Not an OCA connection ');
RETURN;
END IF;
--
-- check for more result sets
--
IF (EXEC_SQL.MORE_RESULT_SETS(conidODBC, curID)) THEN
TEXT_IO.PUT_LINE(' more result sets ');
ELSE
TEXT_IO.PUT_LINE(' no more result sets ');
END IF;
...
EXEC_SQL.CLOSE_CONNECTION(conidODBC);
END;