Avalados por :

Cómo resolver el error de asignación en un parámetro INOUT en SAP HANA

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

Hola,

He creado un procedimiento almacenado de muestra utilizando variables escalares. En el procedimiento almacenado estoy utilizando un parámetro INOUT. Por favor, encuentra a continuación el procedimiento almacenado.

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 después ' || :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 después ' || :x);

END;

Pero al crear el inout_proc me está dando un error como " la expresión no puede ser utilizada como un objetivo de asignación: :X".

Por favor, ayúdame a resolver este problema.

Gracias y saludos,

Ramana.

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

2 Respuestas

0
Cargando...

Hola Ravindra,

Como sugeriste, creé una variable y le asigné un valor x a esa variable. La función llamada tiene una variable INOUT. Ahora está funcionando bien.

Gracias y saludos,

Ramana.

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

Hola Venkata,

El parámetro "x" se ha definido como IN. No se le puede asignar un valor. Puede que desees definir otra variable, digamos "a", luego asignar el valor de "x" a "a" y usar "a" como variable IN OUT para el segundo procedimiento.

Saludos,

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?