CREATE PROCEDURE (SOME_ID INTEGER)
AS
DECLARE CURSOR CUR;
BEGIN
IF (SOME_ID IS NULL)
CUR = CURSOR FOR SELECT * FROM MY_TABLE;
ELSE // IF (SOME_ID IS NOT NULL)
CUR = CURSOR FOR SELECT * FROM MY_TABLE WHERE ID = :SOME_ID;
<ВСЁ ТОТ ЖЕ КОД, НО В ЕДИНСТВЕННОМ ЭКЗЕМПЛЯРЕ>
END
хотел сказать
CREATE PROCEDURE (SOME_ID INTEGER)
AS
DECLARE CURSOR CUR;
BEGIN
IF (SOME_ID IS NULL)
CUR = CURSOR FOR SELECT * FROM MY_TABLE;
ELSE // IF (SOME_ID IS NOT NULL)
CUR = CURSOR FOR SELECT * FROM MY_TABLE WHERE ID = :SOME_ID;
FOR FETCH FROM CUR DO
<ВСЁ ТОТ ЖЕ КОД, НО В ЕДИНСТВЕННОМ ЭКЗЕМПЛЯРЕ>
END