Parametros OUTPUT en procedimientos

14/06/2004 - 17:51 por David | Informe spam
Hola a todos,

Estoy intentado devolver en un mismo procedimiento varios
resultados de varias SELECT.

Como no se pueden devolver vectores, me gustaria saber si
me puedo declarar, dentro del PROCEDURE, una variable
definida por usuario de tipo "select" (con la misma
estructura de la select que hago), de tal forma que si me
defino 4 variables con las estructuras que quiero devolver
las puedo usar como variables de salida.

¿Pueden los PROCEDURE devolver este tipo de variables
definidas por usuario?

No me sirven las tablas temporales ni las variables
varchar con separadores emulando un vector...

Muchas gracias de antemano!!

Preguntas similare

Leer las respuestas

#1 Maxi
14/06/2004 - 17:58 | Informe spam
Hola, algo asi buscas

CREATE PROC #PEPITO AS
SELECT * FROM CUSTOMERS
go

EXEC #pepito



Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"David" escribió en el mensaje
news:1c2a401c45227$803ead90$
Hola a todos,

Estoy intentado devolver en un mismo procedimiento varios
resultados de varias SELECT.

Como no se pueden devolver vectores, me gustaria saber si
me puedo declarar, dentro del PROCEDURE, una variable
definida por usuario de tipo "select" (con la misma
estructura de la select que hago), de tal forma que si me
defino 4 variables con las estructuras que quiero devolver
las puedo usar como variables de salida.

¿Pueden los PROCEDURE devolver este tipo de variables
definidas por usuario?

No me sirven las tablas temporales ni las variables
varchar con separadores emulando un vector...

Muchas gracias de antemano!!




Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.698 / Virus Database: 455 - Release Date: 02/06/2004
Respuesta Responder a este mensaje
#2 Gustavo Larriera [MVP SQL]
14/06/2004 - 18:45 | Informe spam
Puedes usar el tipo de datos TABLE, ejemplo:

DECLARE @reports TABLE (empid nchar(5) primary key,
empname nvarchar(50) NOT NULL,
mgrid nchar(5),
title nvarchar(30),
processed tinyint default 0)

Estudia los detalles en tus Books Online del producto.

Gustavo Larriera, MVP-SQL, MCSE
Uruguay LatAm
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"David" wrote in message
news:1c2a401c45227$803ead90$
Hola a todos,

Estoy intentado devolver en un mismo procedimiento varios
resultados de varias SELECT.

Como no se pueden devolver vectores, me gustaria saber si
me puedo declarar, dentro del PROCEDURE, una variable
definida por usuario de tipo "select" (con la misma
estructura de la select que hago), de tal forma que si me
defino 4 variables con las estructuras que quiero devolver
las puedo usar como variables de salida.

¿Pueden los PROCEDURE devolver este tipo de variables
definidas por usuario?

No me sirven las tablas temporales ni las variables
varchar con separadores emulando un vector...

Muchas gracias de antemano!!
Respuesta Responder a este mensaje
#3 David
14/06/2004 - 18:54 | Informe spam
Hola,

Seria algo asi:

CREATE PROC #PEPITO @var1 (tipo?) OUTPUT, @var2 (tipo?)
OUTPUT,@var3 (tipo?) OUTPUT,@var4 (tipo?) OUTPUT
AS
select @var1 = SELECT * FROM CUSTOMERS
select @var2 = SELECT * FROM dbo.Employees
select @var3 = SELECT * FROM dbo.Products
select @var4 = SELECT * FROM dbo.Territories
go

EXEC #pepito @var1,@var2,@var3,@var4


Un procedimiento en el que pudiera devolver cada resultado
de cada una de estas select en una variable distinta.

En este caso, tendria que devolver 4 variables, cada una
definida con la misma estructura de la tabla asignada.
Pero no se si se puede definir 'tipo tabla'.



Hola, algo asi buscas

CREATE PROC #PEPITO AS
SELECT * FROM CUSTOMERS
go

EXEC #pepito



Salu2
-


-
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
-


-
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"David" escribió en el mensaje
news:1c2a401c45227$803ead90$
Hola a todos,

Estoy intentado devolver en un mismo procedimiento varios
resultados de varias SELECT.

Como no se pueden devolver vectores, me gustaria saber si
me puedo declarar, dentro del PROCEDURE, una variable
definida por usuario de tipo "select" (con la misma
estructura de la select que hago), de tal forma que si me
defino 4 variables con las estructuras que quiero devolver
las puedo usar como variables de salida.

¿Pueden los PROCEDURE devolver este tipo de variables
definidas por usuario?

No me sirven las tablas temporales ni las variables
varchar con separadores emulando un vector...

Muchas gracias de antemano!!




Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.698 / Virus Database: 455 - Release Date:


02/06/2004


.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida