Avalados por :

Como resolver o erro de atribuição em um parâmetro INOUT no SAP HANA

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 1 Vistas
0
Cargando...

Olá,

Criei um procedimento armazenado de amostra usando variáveis escalares. No procedimento armazenado, estou utilizando um parâmetro INOUT. Por favor, veja abaixo o procedimento armazenado.

drop procedure scalar_proc;

create procedure scalar_proc(IN OUT a bigint) LANGUAGE SQLSCRIPT AS

BEGIN

ins_msg_proc('a antes ' || :a);

a := a + 1;

ins_msg_proc('a depois ' || :a);

END;

drop procedure inout_proc;

create procedure inout_proc(IN x bigint) LANGUAGE SQLSCRIPT AS

BEGIN

init_proc();

ins_msg_proc('x antes ' || :x);

call scalar_proc(:x);

ins_msg_proc('x depois ' || :x);

END;

Mas ao criar o inout_proc, está apresentando um erro como " a expressão não pode ser usada como um alvo de atribuição: :X".

Por favor, ajude-me a resolver este problema.

Obrigado e cumprimentos,

Ramana.

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

2 Respuestas

0
Cargando...

Olá Ravindra,

Como sugerido, criei uma variável e atribuí um valor x a essa variável. A função chamada tem uma variável INOUT. Agora está funcionando corretamente.

Obrigado e cumprimentos,

Ramana.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá, Venkata,

O parâmetro "x" foi definido como IN. Não pode ser atribuído um valor a ele. Talvez queira definir outra variável, digamos "a", e então atribuir o valor de "x" a "a" e usar "a" como variável IN OUT para o segundo procedimento.

Cumprimentos,

Ravi

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?