Definición recordset creado por SP

07/11/2006 - 11:54 por AC | Informe spam
Buenos días,

Supongamos que vamos a explotar el resultado de un SP, del cual no tenemos
acceso a su código. ¿ Es posible acceder a la definición del recordset
devuelto por el SP ? Si fuese posible, creando una tabla temporal con la
misma definición, me permitiría la explotación de los datos incluídos en la
tabla mediante INSERT.

Saludos, y muchas gracias de antemano.

A:C:

Preguntas similare

Leer las respuestas

#1 Maxi
07/11/2006 - 13:08 | Informe spam
Hola, poder puedes ver el resultado de un sp haciendo EXEC sobre el mismo y
para insertarlo en una tabla (sea o no temporal) hay que hacer

INSERT TABLA
EXEC STORE


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"AC" escribió en el mensaje
news:
Buenos días,

Supongamos que vamos a explotar el resultado de un SP, del cual no tenemos
acceso a su código. ¿ Es posible acceder a la definición del recordset
devuelto por el SP ? Si fuese posible, creando una tabla temporal con la
misma definición, me permitiría la explotación de los datos incluídos en
la
tabla mediante INSERT.

Saludos, y muchas gracias de antemano.

A:C:


Respuesta Responder a este mensaje
#2 AC
07/11/2006 - 13:27 | Informe spam
Gracias por la respuesta.

Me refería al hecho de conocer el tipo de datos de cada una de las columnas
que el SP retorna. Entiendo que es necesario primero crear una tabla para
después insertarle los datos del SP.
Si lo que se desea es trabajar con los datos del SP, parece lógico crear una
tabla con las columna y tipos de datos que el SP retorna. A eso me refiero,
¿cómo conocer los tipos de datos del SP?

AC

"Maxi" escribió en el mensaje
news:
Hola, poder puedes ver el resultado de un sp haciendo EXEC sobre el mismo


y
para insertarlo en una tabla (sea o no temporal) hay que hacer

INSERT TABLA
EXEC STORE


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"AC" escribió en el mensaje
news:
> Buenos días,
>
> Supongamos que vamos a explotar el resultado de un SP, del cual no


tenemos
> acceso a su código. ¿ Es posible acceder a la definición del recordset
> devuelto por el SP ? Si fuese posible, creando una tabla temporal con la
> misma definición, me permitiría la explotación de los datos incluídos en
> la
> tabla mediante INSERT.
>
> Saludos, y muchas gracias de antemano.
>
> A:C:
>
>


Respuesta Responder a este mensaje
#3 Maxi
07/11/2006 - 13:39 | Informe spam
Hola, mmm no coincido que el resultado de un SP deba ir a una tabla para
manipularla, lo que se hace por lo general es ese resultado manejarlo en un
recordset. Porque no nos contas mejor para que estas necesitando pasar lo
datos de un SP a una tabla? que tipo de operacion queres hacer?


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"AC" escribió en el mensaje
news:
Gracias por la respuesta.

Me refería al hecho de conocer el tipo de datos de cada una de las
columnas
que el SP retorna. Entiendo que es necesario primero crear una tabla para
después insertarle los datos del SP.
Si lo que se desea es trabajar con los datos del SP, parece lógico crear
una
tabla con las columna y tipos de datos que el SP retorna. A eso me
refiero,
¿cómo conocer los tipos de datos del SP?

AC

"Maxi" escribió en el mensaje
news:
Hola, poder puedes ver el resultado de un sp haciendo EXEC sobre el mismo


y
para insertarlo en una tabla (sea o no temporal) hay que hacer

INSERT TABLA
EXEC STORE


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"AC" escribió en el mensaje
news:
> Buenos días,
>
> Supongamos que vamos a explotar el resultado de un SP, del cual no


tenemos
> acceso a su código. ¿ Es posible acceder a la definición del recordset
> devuelto por el SP ? Si fuese posible, creando una tabla temporal con
> la
> misma definición, me permitiría la explotación de los datos incluídos
> en
> la
> tabla mediante INSERT.
>
> Saludos, y muchas gracias de antemano.
>
> A:C:
>
>






Respuesta Responder a este mensaje
#4 AC
07/11/2006 - 18:09 | Informe spam
Veamos si sé explicarme.

El SP 'A', me da un conjunto de datos referidos a los clientes de la
compañía (saldo de una cuenta, ...)
El SP 'B', me da otro conjunto de datos también referidos a los mismos
clientes (saldos de otras cuentas,...)

- En ambos casos la clave de referencia es el código de cliente.
- No se tiene acceso al código de los SP 'A' ni 'B', por lo tanto puedo
obtener las columnas de retorno pero no sus tipos de datos.

Se ha de confeccionar en tercer SP 'C', que accediendo a la información de
'A' y 'B', retorne los datos de los clientes en un SELECT con datos tanto
del SP 'A' como del SP 'B' .

Yo había pensado en :

INSERT INTO #TABLA_A exec SP_A
INSERT INTO #TABLA_B exec SP_B

Para después crear el SELECT de retorno mediante JOIN de #TABAL_A y de
#TABLA_B.

Pero, si no me equivoco, para los INSERT debo crear previamente las #TABLA_
con el diseño adecuado para recibir los SP. Si no sé los tipos de datos,
¿cómo puedo crear estas tablas?

Naturalmente, agradecería cualquier otra idea para resolver este problema.
Muchas gracias de antemano.


AC







"Maxi" escribió en el mensaje
news:
Hola, mmm no coincido que el resultado de un SP deba ir a una tabla para
manipularla, lo que se hace por lo general es ese resultado manejarlo en


un
recordset. Porque no nos contas mejor para que estas necesitando pasar lo
datos de un SP a una tabla? que tipo de operacion queres hacer?


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"AC" escribió en el mensaje
news:
> Gracias por la respuesta.
>
> Me refería al hecho de conocer el tipo de datos de cada una de las
> columnas
> que el SP retorna. Entiendo que es necesario primero crear una tabla


para
> después insertarle los datos del SP.
> Si lo que se desea es trabajar con los datos del SP, parece lógico crear
> una
> tabla con las columna y tipos de datos que el SP retorna. A eso me
> refiero,
> ¿cómo conocer los tipos de datos del SP?
>
> AC
>
> "Maxi" escribió en el mensaje
> news:
>> Hola, poder puedes ver el resultado de un sp haciendo EXEC sobre el


mismo
> y
>> para insertarlo en una tabla (sea o no temporal) hay que hacer
>>
>> INSERT TABLA
>> EXEC STORE
>>
>>
>> Salu2
>>
>> Microsoft MVP SQL Server
>> Culminis Speaker
>> INETA Speaker
>>
>> "AC" escribió en el mensaje
>> news:
>> > Buenos días,
>> >
>> > Supongamos que vamos a explotar el resultado de un SP, del cual no
> tenemos
>> > acceso a su código. ¿ Es posible acceder a la definición del


recordset
>> > devuelto por el SP ? Si fuese posible, creando una tabla temporal con
>> > la
>> > misma definición, me permitiría la explotación de los datos incluídos
>> > en
>> > la
>> > tabla mediante INSERT.
>> >
>> > Saludos, y muchas gracias de antemano.
>> >
>> > A:C:
>> >
>> >
>>
>>
>
>


Respuesta Responder a este mensaje
#5 Manuel Etcheto
07/11/2006 - 19:31 | Informe spam
Hola.
Cada objeto field de la colección fields del recordset ya tiene incluídas
las propiedades que necesitas.
nombre, tipo, escala, precisión, tamaño, y atributos como si puede ser nulo,
etc.

Si necesitas ayuda para iterarlo y obtener eso te paso un script.

Suerte
Manuel




"AC" escribió en el mensaje
news:uYcbc%
Veamos si sé explicarme.

El SP 'A', me da un conjunto de datos referidos a los clientes de la
compañía (saldo de una cuenta, ...)
El SP 'B', me da otro conjunto de datos también referidos a los mismos
clientes (saldos de otras cuentas,...)

- En ambos casos la clave de referencia es el código de cliente.
- No se tiene acceso al código de los SP 'A' ni 'B', por lo tanto puedo
obtener las columnas de retorno pero no sus tipos de datos.

Se ha de confeccionar en tercer SP 'C', que accediendo a la información de
'A' y 'B', retorne los datos de los clientes en un SELECT con datos tanto
del SP 'A' como del SP 'B' .

Yo había pensado en :

INSERT INTO #TABLA_A exec SP_A
INSERT INTO #TABLA_B exec SP_B

Para después crear el SELECT de retorno mediante JOIN de #TABAL_A y de
#TABLA_B.

Pero, si no me equivoco, para los INSERT debo crear previamente las
#TABLA_
con el diseño adecuado para recibir los SP. Si no sé los tipos de datos,
¿cómo puedo crear estas tablas?

Naturalmente, agradecería cualquier otra idea para resolver este problema.
Muchas gracias de antemano.


AC







"Maxi" escribió en el mensaje
news:
Hola, mmm no coincido que el resultado de un SP deba ir a una tabla para
manipularla, lo que se hace por lo general es ese resultado manejarlo en


un
recordset. Porque no nos contas mejor para que estas necesitando pasar lo
datos de un SP a una tabla? que tipo de operacion queres hacer?


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"AC" escribió en el mensaje
news:
> Gracias por la respuesta.
>
> Me refería al hecho de conocer el tipo de datos de cada una de las
> columnas
> que el SP retorna. Entiendo que es necesario primero crear una tabla


para
> después insertarle los datos del SP.
> Si lo que se desea es trabajar con los datos del SP, parece lógico
> crear
> una
> tabla con las columna y tipos de datos que el SP retorna. A eso me
> refiero,
> ¿cómo conocer los tipos de datos del SP?
>
> AC
>
> "Maxi" escribió en el mensaje
> news:
>> Hola, poder puedes ver el resultado de un sp haciendo EXEC sobre el


mismo
> y
>> para insertarlo en una tabla (sea o no temporal) hay que hacer
>>
>> INSERT TABLA
>> EXEC STORE
>>
>>
>> Salu2
>>
>> Microsoft MVP SQL Server
>> Culminis Speaker
>> INETA Speaker
>>
>> "AC" escribió en el mensaje
>> news:
>> > Buenos días,
>> >
>> > Supongamos que vamos a explotar el resultado de un SP, del cual no
> tenemos
>> > acceso a su código. ¿ Es posible acceder a la definición del


recordset
>> > devuelto por el SP ? Si fuese posible, creando una tabla temporal
>> > con
>> > la
>> > misma definición, me permitiría la explotación de los datos
>> > incluídos
>> > en
>> > la
>> > tabla mediante INSERT.
>> >
>> > Saludos, y muchas gracias de antemano.
>> >
>> > A:C:
>> >
>> >
>>
>>
>
>






Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida