Como crear un procedimiento con parametro para ordenar

11/05/2007 - 23:40 por ZiCruz | Informe spam
Hola a tod@s,



quiero hacer una procedimiento que pasandole por parametro el orden,
ordene dicha tabla por el campo pasado por parámetro ¿es posible? por que he
probado esto :



ALTER PROCEDURE dbo.StoredProcedure2

(

@parameter1 varchar

)

AS

/* SET NOCOUNT ON */

SELECT * FROM VerTodo ORDER BY @parameter1;

RETURN





pero me da error al guardo



¿hay alguna manera de hacerlo?

Preguntas similare

Leer las respuestas

#1 Jose Mariano Alvarez
12/05/2007 - 01:24 | Informe spam
En el post ,
DIJO .
quiero hacer una procedimiento que pasandole por parametro el orden,
ordene dicha tabla por el campo pasado por parámetro ¿es posible? por que he
probado esto :





Asi no te va a funcionar.
Revisa EXEC() en la ayuda. .



Saludos
Ing. Jose Mariano Alvarez


(Cambia los ceros por O y saca lo que sobra)


IMPORTANTE

Por favor traten de indicar la versión de SQL y Service Pack.
La inclusión de (CREATE, INSERTS, etc.) para poder reproducir el
problema también ayuda.
Respuesta Responder a este mensaje
#2 Maxi
13/05/2007 - 01:59 | Informe spam
Hola, para hacer lo que vos buscas vas a tener que caer en sql_dinamico y
usar exec() o bien sp_executesql, yo te recomiendo el segundo.

Te paso un link donde habla de las virtudes y maldades del SQL-dinamico

http://www.hayes.ch/sql/sql_dinamico.html

"ZiCruz" escribió en el mensaje
news:
Hola a ,



quiero hacer una procedimiento que pasandole por parametro el orden,
ordene dicha tabla por el campo pasado por parámetro ¿es posible? por que
he
probado esto :



ALTER PROCEDURE dbo.StoredProcedure2

(

@parameter1 varchar

)

AS

/* SET NOCOUNT ON */

SELECT * FROM VerTodo ORDER BY @parameter1;

RETURN





pero me da error al guardo



¿hay alguna manera de hacerlo?


Respuesta Responder a este mensaje
#3 Javier Loria
13/05/2007 - 16:30 | Informe spam
Hola:
Puedes usar la sintaxis:
SET NOCOUNT ON;
SELECT *
FROM Tabla
ORDER BY
CASE WHEN @Tipo='Columna1'
THEN Columna1
WHEN @Tipo='@Column2'
THEN Columna2
ELSE Columna3
END
Claro que el desempeño en tablas grandes puede ser muy malo.
Saludos,

Javier Loria
Costa Rica (MVP)
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

"ZiCruz" wrote in message
news:
Hola a ,



quiero hacer una procedimiento que pasandole por parametro el orden,
ordene dicha tabla por el campo pasado por parámetro ¿es posible? por que
he
probado esto :



ALTER PROCEDURE dbo.StoredProcedure2

(

@parameter1 varchar

)

AS

/* SET NOCOUNT ON */

SELECT * FROM VerTodo ORDER BY @parameter1;

RETURN





pero me da error al guardo



¿hay alguna manera de hacerlo?


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