Yes tonkuma, thanks for that. Looks a lot easier.
Was also just interested in how to do it using PREPARE statement.
DB2user - thanks again.
One final thing, are you saying that I remove the IF THEN ELSEIF section from the BEGIN - END ?
ie, something like:
CREATE PROCEDURE BLAH(IN MYVAR VARCHAR(50),IN MYVAL VARCHAR(50))
DECLARE ADDWHERE VARCHAR(100);
DELCARE SMT VARCHAR(1000);
IF MYVAR='VIEWCAT' THEN
SET ADDWHERE = 'TABLE1.FIELD1='''|| MYVAL || '''';
ELSEIF MYVAR='VIEWDOG' THEN
SET ADDWHERE = 'TABLE1.FIELD2='''|| MYVAL || '''';
END IF;
SET SMT = 'SELECT * FROM TABLE1 WHERE ' || ADDWHERE;
--ALL OF ABOVE BEFORE THE BEGIN-END?
BEGIN
PREPARE S1 FROM SMT;
DECLARE C1 CURSOR FOR S1;
OPEN C1;
END;