Ver Mensaje Individual
  #9 (permalink)  
Antiguo 11/02/2010, 14:08
yera2002
 
Fecha de Ingreso: agosto-2007
Mensajes: 268
Antigüedad: 16 años, 8 meses
Puntos: 2
Respuesta: Varios registros en un store procedure

Gracias Por responder iislas:

Creono me explique muy bien, no tengo problema con usar el Like, aqui veo 2 cosas, con el ejemplo que pus se puede presentar el caso de tener un usuario "USUARIO 20", "USUARIO 21", ETC Si utilizo un like, me mostrará tambien la informacion del esos usuarios, además del usuario "USUARIO 2". Ahora mi duda básica es la siguiente. Trataré de ser un poco más explicita.

En visual Basic script, yo corro un proceso donde le solicito al usuario los filtros para un reporte. Estos filtros son:
1. Usuario
1.1 Usuario Inicial
1.2 Usuario Final
2. Operacion
2.1. Operacion 1
2.2. Operacion 2
3. FechaAcceso
3.1. Fecha Acceso Inicial
3.2. Fecha Acceso Final

Con VB Script yo puedo concatenar una cadena y decir que voy a enviar ago asi como:

If Not IsNull(UsuarioInicial) AND Not IsNull(UsuarioFinal) Then
cCondicion = " AND usuario >= '" & Trim(usuarioInicial) & "'AND usuario <= '" & Trim(usuarioFinal) & "'"
End If

If Not IsNull(Operacion 1) Then
If Not IsNull(Operacion 2) Then
cCondicion = cCondicion " AND (operacion = '" & Trim(Operacion1) & "' OR operacion = '" &Trim(Operacion2) & "')"
Else
cCondicion = cCondicion " AND operacion = '" & Trim(Operacion1) & "'"
End If
ElseIf Not IsNull(Operacion 2) Then
cCondicion = cCondicion " AND operacion = '" & Trim(Operacion1) & "'"
End If

If Not IsNull(FechaInicial) AND Not IsNull(FechaFinal) Then
cCondicion = " AND fechaacceso >= " & FechaSerial(fechaInicial) & " AND fechaacceso<= " & FechaSerial(fechaFinal)
End If

De tal modo que al crear el rcordset (anteriormente al store Procedure) pudiera yo determinar que condicionante mando.

Y dijera algo asi:

strSQL = ""
strSQL = strSQL & "SELECT usuario, fechaacceso, operacion, tiempoacceso "
strSQL = strSQL & "FROM usuarios "
strSQL = strSQL & "WHERE 1 = 1 "
strSQL = strSQL & cCondicion

La aplicacion lo hace bien, pero creo via Store Procedure sera más rapido y no se presentaria el error de Query Time Out. Quiero saber si est condicionante, la puedo evar via store procedure e implementar un query algo asi:

SELECT usuario, fechaacceso, operacion, tiempoaccesoFROM usuariosWHERE 1 = 1 @cCondicion

En caso de no poder, ¿que sugieren?, por que creo que tendre que agregar todas las condicionantes posibles como Sentencias independientes

Saludos...