¿Como seleccionar campos indefinidos?

25/07/2006 - 14:45 por wtorani | Informe spam
Hola amigos.
Se me presenta el problema siguiente en SQL server 2000, espero
alguien pueda ayudarme:

Tengo una tabla TEMP01 que periodicamente la elimino y la vuelvo a
crear con un numero variable de registros. El caso es que cada vez que
lleno esta tabla, la cantidad de campos que creo es diferente y los
nombres de dichos campos tambien varian por completo. Vale decir que
TEMP01 siempre se convierte en una tabla completamente diferente.

Mi problema surge cuando intento hacer un SELECT de los campos de la
tabla. Puedo obtener obviamente los nombres de todos los campos que
actualmente posee la tabla, pero no se como podria agregar
automaticamente cada nombre de campo en la consulta.
Esta consulta la debo ejecutar en un stored procedure y cuando intento
el codigo de abajo me resulta simplemente un valor constante para cada
campo:

Select 'nombCampo1' , 'nombCampo2','nombCampo3' .'nombCampoN' from
TEMP01

Si alguien supiera como puedo insertar variables en la instruccion
SELECT y que los pueda interpretar como los nombres de los campos.
seria la solucion perfecta.

Gracias y un saludo afectivo a todos.

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
25/07/2006 - 15:25 | Informe spam
,

Aunque esto que recomiendo no es considerado una buena practica, en este
caso usaria "select * from dbo.temp01", si es que no tiene columnas tipo text
/ ntext, image, etc.


AMB


"" wrote:

Hola amigos.
Se me presenta el problema siguiente en SQL server 2000, espero
alguien pueda ayudarme:

Tengo una tabla TEMP01 que periodicamente la elimino y la vuelvo a
crear con un numero variable de registros. El caso es que cada vez que
lleno esta tabla, la cantidad de campos que creo es diferente y los
nombres de dichos campos tambien varian por completo. Vale decir que
TEMP01 siempre se convierte en una tabla completamente diferente.

Mi problema surge cuando intento hacer un SELECT de los campos de la
tabla. Puedo obtener obviamente los nombres de todos los campos que
actualmente posee la tabla, pero no se como podria agregar
automaticamente cada nombre de campo en la consulta.
Esta consulta la debo ejecutar en un stored procedure y cuando intento
el codigo de abajo me resulta simplemente un valor constante para cada
campo:

Select 'nombCampo1' , 'nombCampo2','nombCampo3' .'nombCampoN' from
TEMP01

Si alguien supiera como puedo insertar variables en la instruccion
SELECT y que los pueda interpretar como los nombres de los campos.
seria la solucion perfecta.

Gracias y un saludo afectivo a todos.


Respuesta Responder a este mensaje
#2 wtorani
25/07/2006 - 19:13 | Informe spam
Gracias Alejandro.
Justamente era la alternativa que olvide mencionar para no tomar en
cuenta.
Sucede que necesariamente debo manejar los nombres de cada campo.
Por ejemplo en un stored procedure podria tener lo siguiente:

create proc sp_Ejem
@nomcampo varchar(30)
as
Select @nomcampo from TEMP01

Agradecere toda ayuda.

William
Respuesta Responder a este mensaje
#3 Salvador Ramos
25/07/2006 - 20:26 | Informe spam
Hola,

Lo que intentas hacer, necesita del uso de sql dinámico. Pero ten en cuenta
que no es una buena práctica, te paso este artículo sobre el tema:
http://www.hayes.ch/sql/sql_dinamico.html

Un saludo
Salvador Ramos
Murcia - España

[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)


escribió en el mensaje
news:
Gracias Alejandro.
Justamente era la alternativa que olvide mencionar para no tomar en
cuenta.
Sucede que necesariamente debo manejar los nombres de cada campo.
Por ejemplo en un stored procedure podria tener lo siguiente:

create proc sp_Ejem
@nomcampo varchar(30)
as
Select @nomcampo from TEMP01

Agradecere toda ayuda.

William

Respuesta Responder a este mensaje
#4 wtorani
26/07/2006 - 09:02 | Informe spam
Gracias Salvador.
Con tu recomendacion me basto para obtener lo que estaba buscando.
Una vez mas gracias a todos en el foro y felicitaciones por su exito.

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