Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   SQL Server (http://www.forosdelweb.com/f87/)
-   -   Ayuda SQL 2000, Stored Procedure (http://www.forosdelweb.com/f87/ayuda-sql-2000-stored-procedure-586139/)

kaquijose 13/05/2008 17:10

Ayuda SQL 2000, Stored Procedure
 
Por favor amigos, necesito nuevamente de su ayuda.

Estoy desarrollando un Sp que posea la funcionalidad de una función en VBasic. El problema radica en que no puedeo ejecutar un cadena de SQL para declara un cursor como se visualiza abajo. Por favor si alguien me dice si esto es posible o NO de una vez. De antemano muchas gracias.


CREATE PROCEDURE SP_PR_OPERAR @tipoTransaccion NVARCHAR (2) as
DECLARE @query nVarChar(100)
SET @query = 'select * from transacciones where transaccion=' + @tipoTransaccion

DECLARE ta1 CURSOR FOR
EXECUTE(@query) -> AQUI ES DONDE TENGO EL PROBLEMA
-- Por favor Alguna idea de como ejecutar un query que tengo en una variable -- para declara un cursor.
Open ta1
FETCH NEXT FROM ta1 into @tmpOpve, @tmpTotal,@tmpProvee
WHILE @@FETCH_STATUS = 0
......
......
......
......
FETCH NEXT FROM ta1 into @tmpOpve, @tmpTotal,@tmpProvee
END
CLOSE ta1
DEALLOCATE ta1
GO

flaviovich 13/05/2008 17:28

Re: Ayuda SQL 2000, Stored Procedure
 
No puede ser asi?
Código:

...
DECLARE ta1 CURSOR FOR
select * from transacciones where transaccion=@tipoTransaccion
...


Andres95 14/05/2008 06:19

Re: Ayuda SQL 2000, Stored Procedure
 
Lo mejor sería eliminar el cursor, en la medida de lo posible.....

:arriba: Saludos!

iislas 14/05/2008 11:52

Re: Ayuda SQL 2000, Stored Procedure
 
Yo me he quedado con la duda de lo que desea hacer, ¿Que contiene @tipoTransaccion?

pajarraco2007 15/05/2008 12:46

Re: Ayuda SQL 2000, Stored Procedure
 
Hola, si creo que es lo que estas pretendiendo hacer, el comando seria lo siguiente

'select * from transacciones where transaccion=' + cast((@tipoTransaccion ) as varchar(20))

agregar este codigo si @tipoTransaccion es de tipo INT o numeric
+ cast((@tipoTransaccion ) as varchar(20))


La zona horaria es GMT -6. Ahora son las 21:52.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.