Fórum Parametro para stored procedure não funciona :( #42997
11/03/2004
0
BEGIN
SELECT DISTINCT EPPC FROM ESPECIFICA_PROCEDCONV_DETALHE EPD
[b:e55fa552e5]WHERE EPPV IN (:TAB1, :TAB2)[/b:e55fa552e5]
into :CODPROCE;
suspend;
end
Sremulador
Curtir tópico
+ 0Posts
11/03/2004
Afarias
FROM ESPECIFICA_PROCEDCONV_DETALHE
WHERE EPPV = :TAB1 OR EPPV = :TAB2
into :CODPROCE DO
suspend;
T+
Gostei + 0
11/03/2004
Sremulador
/*!!! Error occured !!!
multiple rows in singleton select\n.
múltiplas linhas em um select de linha única.
cod
COMMIT WORK;
SET AUTODDL OFF;
SET TERM ^ ;
CREATE PROCEDURE ´PROCEDIMENTOVIS´
( ´TAB2´ INTEGER, ´TAB1´ INTEGER)
RETURNS
( ´CODPRD´ INTEGER, ´CODPROCE´ INTEGER)
AS
BEGIN
SELECT DISTINCT EPPV, EPPC FROM ESPECIFICA_PROCEDCONV_DETALHE EPD
WHERE ((EPPV=:TAB1) or (EPPV=:TAB2))
into :CODPROCE, :CODPRD;
suspend;
end
^
SET TERM ; ^
COMMIT WORK;
SET AUTODDL ON;
Gostei + 0
11/03/2004
Afarias
|ESPECIFICA_PROCEDCONV_DETALHE EPD
|WHERE ((EPPV=:TAB1) or (EPPV=:TAB2))
|into :CODPROCE, :CODPRD;
Um select SEM o FOR deve sempre retornar apenas 1 registro!! Caso contrário -- ai está o erro!
ou vc muda ´algo´ para retornar apenas 1 registro ou vc muda o código do procedimento para::
FOR SELECT DISTINCT EPPV, EPPC
FROM ESPECIFICA_PROCEDCONV_DETALHE
WHERE ((EPPV=:TAB1) or (EPPV=:TAB2))
INTO :CODPROCE, :CODPRD
DO SUSPEND;
T+
Gostei + 0
11/03/2004
Sremulador
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)