Oracle - Se puede concatenar 'campo' para formar el nombre

 
Vista:

Se puede concatenar 'campo' para formar el nombre

Publicado por IDOIA (43 intervenciones) el 26/03/2004 14:12:33
Hola a todos, otra vez, necesito saber si se puede, concatenar una variable a un nombre de campo de un bloque. Me explico, en un bloque tengo 10 campos iguales,
:control.bloque1
:control.bloque2
....
:control,bloque10
y tengo q hacer para cada uno de ellos el mismo tratamiento. Para no editarlo 10 veces, lo quería hacer mediante un LOOP,
DECLARE
Sentencia varchar2(2000);
nVar number;
nCont number := 1;
BEGIN
LOOP
EXIT WHEN ncont > 10;
IF :control.BLOQUE1 is not null then
sentencia := 'UPDATE bloques1 set lOTE = '||''''||:CONTROL.lote||''''||
' WHERE BLOQUE = '||''''||:CONTROL.BLOQUE1||'''';

Agrupar_Bloque(sentencia,Nvar);

IF nVar = 0 THEN MESSAGE ('NO ha encontrado el bloque ' || :control.bloque1);
RAISE FORM_TRIGGER_FAILURE;
ELSE
COMMIT;
END IF;
END IF;
ncont := ncont + 1;
END LOOP;
END;
Para q esto me sirva, necesito poder concatenar ncont como el 1, el 2, el 3, el 4 ... en los nombres de campo, :control.bloque1 etc... Lo he intentado de varias formas, pero no lo consigo, me da error de compilacion, no reconoce los nombres. Espero haberme explicado bien, Gracias de antemano a todos. Un Saludo Idoia.
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

RE:Se puede concatenar 'campo' para formar el n

Publicado por Byron (300 intervenciones) el 26/03/2004 16:16:29
Le cambie algunas sentencias:
LOOP
EXIT WHEN ncont > 10;
go_item('CONTROL.BLOQUE'||ncont);
IF :system.cursor_value is not null then
sentencia := 'UPDATE bloques1 set '||:system.current_item||' = '''||:system.cursor_value||
''' WHERE BLOQUE = '''||:CONTROL.BLOQUE1||'''';

Agrupar_Bloque(sentencia,Nvar);

IF nVar = 0 THEN MESSAGE ('NO ha encontrado el bloque ' || :control.bloque1);
RAISE FORM_TRIGGER_FAILURE;
ELSE
COMMIT;
END IF;
END IF;
ncont := ncont + 1;
END LOOP;

No se si te sirva

Saludos DTB
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

RE:Se puede concatenar 'campo' para formar el n

Publicado por IDOIA (43 intervenciones) el 29/03/2004 11:49:01
Perfecto Byron,
Me ha funcionado perfectamente. Muchas gracias. Eres un genio.Idoia
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