DB2 - Variables en script SQL para DB2

 
Vista:
sin imagen de perfil

Variables en script SQL para DB2

Publicado por andicar (1 intervención) el 18/07/2014 13:28:04
Hola a todos.

tengo un problema que no se como resolver. Quisiera saber si es osible en un file de script .sql para DB2 el poder incluir variables para ser usadas en todas las queries que se pudieran encontrar en el mismo file como sucede con sqlplus. en Oracle. Por ejemplo:

my_file.sql

define Mi_Variable NUMBER:= 100.

SELECT * FROM CLIENTES where ID_CLI = Mi_Variable;



Agradezco a quienes puedan darme una mano.

Gracias

Carlos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Sandro
Val: 21
Ha mantenido su posición en DB2 (en relación al último mes)
Gráfica de DB2

Variables en script SQL para DB2

Publicado por Sandro (12 intervenciones) el 18/07/2014 23:17:44
en que lenguaje lo quieres hacer, ahí puede poner las variables
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Variables en script SQL para DB2

Publicado por eduardon333 (2 intervenciones) el 14/02/2023 19:22:01
Si se puede en DB2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Variables en script SQL para DB2

Publicado por eduardon333 (2 intervenciones) el 14/02/2023 19:29:53
CONVIRTIENDO TU SCRIPT A DB2 QUEDARIA DE LASIGUIENTE MANERA:

TU SCRIPT:
define Mi_Variable NUMBER:= 100.
SELECT * FROM CLIENTES where ID_CLI = Mi_Variable;

EJEMPLO1:
DECLARE VAR01 INTEGER;
SET VAR01 = 100;
SELECT * FROM CLIENTES WHERE ID_CLI = VAR01 ;

EJEMPLO2:
DECLARE VAR01 INTEGER DEFAULT (100);
SELECT * FROM CLIENTES WHERE ID_CLI = VAR01 ;

EJEMPLO3:
CREATE VARIABLE VAR01 INTEGER;
SET VAR01 = 100;
SELECT * FROM CLIENTES WHERE ID_CLI = VAR01 ;

EJEMPLO4:
WITH T(VAR01) AS (VALUES (100))
SELECT * FROM CLIENTES WHERE ID_CLI = VAR01 ;
/*EN ESTA NO LLEVA ; EL WITH PORQUE ES PARTRE DEL NIDO DEL SELECT*/

EJEMPLO5:
CREATE PROCEDURE VERCLIENTES(IN VAR01 INTEGER)
BEGIN ATOMIC
SELECT * FROM CLIENTES WHERE ID_CLI = VAR01 ;
END
/*EJECUTALA CON*/ CALL VERCLIENTES (100);

ACALRO QUE ESTO FUNCIONA CON LA VERCION DB2 DE LA 11 EN DELANTE, ANTES DE ESATENDRAS PROBLEMAS, DE HECHO TENGO ELMISMOPROBLEMA QUE INTENTO RESOLVER EN VERSIONES ANTERIORES A ESTA.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar