Re: Consulta

12/09/2004 - 21:00 por Jaime | Informe spam
Alguien me puede ayudar ????

"Jaime" <jjburgos23@hotmail.com> escribió en el mensaje news:...

Hola a todos

Quiero realizar una stored procedure que pasandole dos parámetros, uno el
nombre de la tabla y otro una letra, por ejemplo :

sputil_make_sp 'PELICULAS','S'

Donde la letra S quiere decir que me creará un consulta de selección de la
tabla de películas, esto lo puedo conseguir usando las tablas del sistema
sysobjects y syscolumns, no se como conseguir que cuando me monto la
consulta de selección que me tiene que devolver la consulta de arriba, en


la

separación de los campos, en el último campo no me ponga una "coma".

A ver si alguien me puede ayudar.

Saludos
Jaime


 

Leer las respuestas

#1 ulises
13/09/2004 - 17:31 | Informe spam
Podrías hacer una función :

create function dbo.obtienesentencia ( @nombretabla as
varchar(20) )
returns varchar(1000)
as
begin
DECLARE @cadena varchar(1000)
SET @cadena = 'SELECT '
SELECT @cadena = @cadena + COLUMN_NAME + ',' FROM
INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'dbo' AND
TABLE_NAME = @nombretabla
SET @cadena = SUBSTRING(@cadena,1,LEN(@cadena)-1)
SET @cadena = @cadena + ' FROM ' + @nombretabla
return @cadena
end

y si lo ejecutas en la BBDD pubs pidiendo la estructura de
authors, tenemos :

select dbo.obtienesentencia ( 'authors' )

SELECT au_id,au_lname,au_fname,phone,address,
city,state,zip,contract FROM authors

(1 row(s) affected)

ahora bien, ¿cual es la finalidad?, ¿usarlo luego con
sp_executesql o EXECUTE?, si es así debes tener en
consideración los problemas que tendrías con sql dinámico.

The Curse and Blessings of Dynamic SQL
http://www.sommarskog.se/dynamic_sql.html

Saludos,
Ulises

Alguien me puede ayudar ????

"Jaime" escribió en el mensaje


news:...
Hola a todos

Quiero realizar una stored procedure que pasandole dos




parámetros, uno el
nombre de la tabla y otro una letra, por ejemplo :

sputil_make_sp 'PELICULAS','S'

Donde la letra S quiere decir que me creará un consulta




de selección de la
tabla de películas, esto lo puedo conseguir usando las




tablas del sistema
sysobjects y syscolumns, no se como conseguir que




cuando me monto la
consulta de selección que me tiene que devolver la




consulta de arriba, en
la
separación de los campos, en el último campo no me




ponga una "coma".

A ver si alguien me puede ayudar.

Saludos
Jaime






.

Preguntas similares