Here’s all about the Associate/Allocate cursor. The purpose of Associate is to get the cursor from the Stored procedure that’s called. The Allocate just assigns a cursor name to it.
DB2 nested Stored procedure
CREATE PROCEDURE EMP_NAME (OUT p_name VARCHAR(30))
BEGIN
DECLARE result RESULT_SET_LOCATOR VARYING;
-- Call the procedure returning the result set
CALL emp();
-- Get a cursor for the result set
ASSOCIATE RESULT SET LOCATOR (result) WITH PROCEDURE emp;
ALLOCATE cur CURSOR FOR RESULT SET result;
-- Cursor already open, so you can start fetching rows
FETCH cur INTO p_name;
-- ...
CLOSE cur;
END
Recent Posts
- Databricks RSA Preparation: Top Interview Questions and Answers (2026 Guide)
- How to Create a Subagent in Claude Code: A Step-by-Step Guide
- Migrating from Hive Metastore to Unity Catalog in Databricks: Complete Step-by-Step Guide
References






