SQL - Secuencia y Cursor

 
Vista:

Secuencia y Cursor

Publicado por Any (2 intervenciones) el 07/01/2006 23:49:51
Quiero saber como puedo hacer un cursor con un SELECT que obtenga datos de una secuencia en PL/SQL y esto lo repita n veces o sea: Si se me pide que se repita 3 veces el cursor debería devolver algo así:

CURSOR cur_01 IS
SELECT SEQ_ID FROM DUAL
UNION
SELECT SEQ_ID FROM DUAL
UNION
SELECT SEQ_ID FROM DUAL;

Donde SEQ_ID es el nombre de la secuencia y cur_01 del cursor. La idea es hacer un Procedure donde se pase parámetro la cantidad de veces que necesito que se incremente la secuencia y que el resultado del procedure sea el cursor creado con los nuevos identificadores.
Obviamente lo bueno seria no tener que usar una tabla temporal o auxiliar para hacer esto, sino de otra forma, que por el momento no se me ocurre…
Si alguien tiene alguna idea, se lo agradeceré mucho.
Saludos
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
sin imagen de perfil

RE:Secuencia y Cursor

Publicado por Liliana (426 intervenciones) el 09/01/2006 14:59:17
Hola,
No conozco PL/SQL pero te mando algo como ejemplo de lo que se puede hacer en T-SQL.

Con una tabla temporal que tenga tantas filas como cantidad de veces:

declare @veces int set @veces = 2
create table #itera
(nro int)
insert #itera select 1
insert #itera select 2
go

select SEQ_ID
from DUAL
cross join #itera

En tu post hablás de cursor, en MS SQL Server, no se recomienda el uso de los mismos por el alto consumo de recursos que tiene. Si postearas tus necesidades posiblemente surga otra opción.
Saludos,
Liliana.
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