Tente assim: FOR SELECT CODITE, QUANT FROM REPOSICAO_ITENS WHERE CHAVE=:NR_REPOSICAO INTO :mCD_ITEM, :mQT_ITEM DO BEGIN UPDATE CADASTRO SET QUANTIDADE=(QUANTIDADE-:MQT_ITEM) WHERE CODIGO=:mCD_ITEM; END Caso queira retornar cada linha do select ponha um suspend dentro do BEGIN END