Retroceder   Foros del Web > Programación para sitios web > Bases de Datos > SQL Server

Respuesta
 
Herramientas Desplegado
Antiguo 19-jun-2007, 08:07   #1 (permalink)
moNTeZIon ha deshabilitado el karma
 
Avatar de moNTeZIon
 
Fecha de Ingreso: enero-2005
Ubicación: CanFenosa Martorelles BCN
Mensajes: 1.286
Enviar un mensaje por Skype™ a moNTeZIon
Se puede pasar como parámetro la condición completa del WHERE??

Buenos días.
Estoy intentando algo parecido a esto:
Código:
CREATE PROCEDURE [dbo].[PA_FAXES_Lista]
(
  @Condicion nvarchar(255)
)
AS
BEGIN
  SELECT
    Id,
    NContrato,
    CodigoOperario
  FROM
    Faxes
  WHERE
    @Condicion
  ORDER BY Id
END
GO
Y así poderle pasar como parámetro toda la condicion o condiciones, en un solo string, pero parece que no es posible...
Como se supone que debería hacer esto?
Gracias!
__________________
..:: moNTeZIon ::..
moNTeZIon está desconectado   Responder Citando
Antiguo 19-jun-2007, 08:17   #2 (permalink)
Colaborador
Andres95 tiene algunos puntos positivos de karma
 
Avatar de Andres95
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.114
Re: Se puede pasar como parámetro la condición completa del WHERE??

si se puede, utilizando sql dinamico...
pero si vas a hacer eso seria mejor que hicieras un execute desde tu aplicacion con todo el query....

aqui mismo en el foro el mith ha posteado links sobre el uso de sql dinamico...

Código:
    sp_executesql
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
Andres95 está desconectado   Responder Citando
Antiguo 19-jun-2007, 08:34   #3 (permalink)
moNTeZIon ha deshabilitado el karma
 
Avatar de moNTeZIon
 
Fecha de Ingreso: enero-2005
Ubicación: CanFenosa Martorelles BCN
Mensajes: 1.286
Enviar un mensaje por Skype™ a moNTeZIon
Re: Se puede pasar como parámetro la condición completa del WHERE??

Ei gracias Andrés.
Si, de momento lo tengo como me comentas, lanzando la SQL desde la aplicación, concatenándole la condición, a saco.
Pero lo veía un tanto raro, puesto que sería la primera consulta de la aplicación que no se ejecuta a través de STOREDs, y también para tener todo el code de Base de Datos en el mismo sitio, veía mejor solución hacer algo como lo que intentaba.
Mirando un poco esto del SQL dinámico (http://sql.manivesa.com/Tutoriales+S...nados/261.aspx), ya ví que no soluciono nada con tener esto como Procedimiento, puesto que hay que recompilarlo cada vez al cambiar la sentencia..
Thanks man!
__________________
..:: moNTeZIon ::..
moNTeZIon está desconectado   Responder Citando
Antiguo 19-jun-2007, 17:17   #4 (permalink)
(Desactivado)
Developer9 Developer9
 
Avatar de Developer9
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.202
Enviar un mensaje por MSN a Developer9
Re: Se puede pasar como parámetro la condición completa del WHERE??

cuidado con los sql inyection
Developer9 está desconectado   Responder Citando
Antiguo 20-jun-2007, 01:33   #5 (permalink)
moNTeZIon ha deshabilitado el karma
 
Avatar de moNTeZIon
 
Fecha de Ingreso: enero-2005
Ubicación: CanFenosa Martorelles BCN
Mensajes: 1.286
Enviar un mensaje por Skype™ a moNTeZIon
Re: Se puede pasar como parámetro la condición completa del WHERE??

Gracias Devel9!!! En este caso es para una aplicación interna de una empresa, que utilizarán 5 o 6 personas. En entorno web me preocuparía más, pero para el caso, y no tener que hacer variables para cada posible parámetro, lo dejaré así ...de momento...
Saludos.
__________________
..:: moNTeZIon ::..
moNTeZIon está desconectado   Responder Citando
Antiguo 20-jun-2007, 07:49   #6 (permalink)
(Desactivado)
Developer9 Developer9
 
Avatar de Developer9
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.202
Enviar un mensaje por MSN a Developer9
Re: Se puede pasar como parámetro la condición completa del WHERE??

Cita:
Iniciado por moNTeZIon Ver Mensaje
Gracias Devel9!!! En este caso es para una aplicación interna de una empresa, que utilizarán 5 o 6 personas. En entorno web me preocuparía más, pero para el caso, y no tener que hacer variables para cada posible parámetro, lo dejaré así ...de momento...
Saludos.
Hace tiempo, en una conferencia de microsoft, nos contaron que según estadísticas mas del 70% de los ataques de seguridad informática son hechos por personas de adentro. En cuestiones de seguridad hay que estar atentos siempre y no confiarse
Developer9 está desconectado   Responder Citando
Antiguo 20-jun-2007, 07:58   #7 (permalink)
moNTeZIon ha deshabilitado el karma
 
Avatar de moNTeZIon
 
Fecha de Ingreso: enero-2005
Ubicación: CanFenosa Martorelles BCN
Mensajes: 1.286
Enviar un mensaje por Skype™ a moNTeZIon
Re: Se puede pasar como parámetro la condición completa del WHERE??

Ups... Cierto! También tiene mucha lógica lo que comentas...
Gracias por la opinión friend
__________________
..:: moNTeZIon ::..
moNTeZIon está desconectado   Responder Citando
Antiguo 27-jun-2007, 14:25   #8 (permalink)
Moderador
Mithrandir llegará a ser famoso muy prontoMithrandir llegará a ser famoso muy pronto
 
Avatar de Mithrandir
 
Fecha de Ingreso: abril-2003
Mensajes: 12.108
Re: Se puede pasar como parámetro la condición completa del WHERE??

La lectura obligatoria en el SQL dinámico es: http://www.sommarskog.se/dynamic_sql.html

Buen provecho.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
Mithrandir está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 18:55.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93