Foros del Web » Programando para Internet » ASP Clásico »

ejecutar accion si no encuentra datos en la DB

Estas en el tema de ejecutar accion si no encuentra datos en la DB en el foro de ASP Clásico en Foros del Web. Hola, me gustaria saber si existe alguna manera y como se hace para tomar una determinada accion si no se encuentran datos en una base ...
  #1 (permalink)  
Antiguo 12/07/2010, 12:17
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 17 años
Puntos: 2
ejecutar accion si no encuentra datos en la DB

Hola, me gustaria saber si existe alguna manera y como se hace para tomar una determinada accion si no se encuentran datos en una base de datos mediante ASP, es decir si no encuentro datos entonces mostrar "no hay datos en la base de datos" u otra accion.
Gracias y Saludos
  #2 (permalink)  
Antiguo 12/07/2010, 13:34
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 10 meses
Puntos: 98
Respuesta: ejecutar accion si no encuentra datos en la DB

Asumiendo que ya existe una conexión activa llamada ObjConn.

Código ASP:
Ver original
  1. Set rs = Server.CreateObject("ADODB.Recordset")
  2. strSQL = "SELECT campos FROM tabla"
  3. rs.Open strSQL, ObjConn, 3, 3
  4.  
  5.  
  6. if not rs.EOF then
  7.    Response.Write("No se encontraron registros")
  8. else
  9.    ' Haz algo con tus datos
  10. end if

Este es uno de los requerimientos mas comunes, el buscador es tu amigo

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 12/07/2010, 14:32
 
Fecha de Ingreso: mayo-2010
Mensajes: 78
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: ejecutar accion si no encuentra datos en la DB

bueno namas para rellenar y que tengas mas clara la idea de como hacerlo
Código ASP:
Ver original
  1. <%      
  2.         Set rs1= Server.CreateObject("ADODB.Recordset")
  3.             selectSQL1 ="select * from Tabla"
  4.  
  5.         Set rs1=prycxn.execute(selectSQL1)
  6.          
  7.         if rs1.EOF then
  8. %>
  9.             <script>
  10.                 alert("No hay información")
  11.             </script>
  12. <%
  13. else
  14.    ' Haz algo conotra tabla por ejemplo'
  15. end if
  #4 (permalink)  
Antiguo 12/07/2010, 14:34
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 17 años
Puntos: 2
Respuesta: ejecutar accion si no encuentra datos en la DB

Hola, pero supongamos que yo llamo a los registros con un do while, tengo que sustituir mi code por eso?. mi code es este:
Código ASP:
Ver original
  1. registros15s.open"EXEC monitor '"&fecha&"','"&linea15n&"','"&horamia&"'",conexion15s
  2. do while not registros15s.eof
  3. etc...
saludos
  #5 (permalink)  
Antiguo 12/07/2010, 15:03
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 17 años
Puntos: 2
Respuesta: ejecutar accion si no encuentra datos en la DB

No púes no me funciona :(
Código ASP:
Ver original
  1. SET conexion9S=Server.CreateObject("ADODB.Connection")
  2.     conexion9s.Open "PROVIDER=SQLOLEDB; DATA SOURCE=VALP-MESSRV02;UID=sa;PWD=messrv;DATABASE=wasp "
  3.             SET registros9s=Server.CreateObject("ADODB.RecordSet")
  4.          registros9s.open"EXEC monitor '"&fecha&"','"&linea09s&"','"&horamia&"'",conexion9s
  5.          
  6.          SET conexionAVG9s=Server.CreateObject("ADODB.Connection")
  7.     conexionAVG9s.Open "PROVIDER=SQLOLEDB; DATA SOURCE=VALP-MESSRV02;UID=sa;PWD=messrv;DATABASE=wasp "
  8.             SET registrosAVG9s= Server.CreateObject("ADODB.RecordSet")
  9.        
  10.         registrosAVG9s.open"SELECT AVG(PESO)as promedio,o.linea from Optimas as o INNER JOIN pesos as p on o.codigo =p.codoptima WHERE fecha >='"&fecha&"' AND hora='"&horamia&"' AND o.linea='L09S' GROUP BY LINEA",conexionAVG9s
  11.         do while not registrosAVG9s.eof
  12.         promedio=cint(registrosAVG9s.fields("promedio"))
  13.             if registros9s.eof then
  14.                 Response.Write("no hay data")
  15.                 else
  16.                     Response.write("si hay data")
  17.                     end if
  #6 (permalink)  
Antiguo 12/07/2010, 15:23
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 10 meses
Puntos: 98
Respuesta: ejecutar accion si no encuentra datos en la DB

A ver, a ver, vamos a pensar que de esto se trata la programación.

Un ciclo do...while tiene por fuerza que comenzar con una condición verdadera -el ciclo se ejecuta al menos una vez- por ende, si la condición no es verdadera, nunca entrará.

Ahora, para lo que pretendes hacer, la condición tiene que estar primero y dentro de la porción que corresponde a la condición verdadera, deberías tener tu ciclo.

Código:
if condicion then
  do
      algo
  loop
else
  imprime "no se encontraron registros"
fin si

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway

Etiquetas: ejecutar, encuentra, acciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:23.