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

Salir de bucle do until

Estas en el tema de Salir de bucle do until en el foro de ASP Clásico en Foros del Web. Código: Do until oRS.EOF if oRS("TABLE_NAME")= (...) then Response.Write "<br> Ha habido un error, la tabla ya existe." comprobacion=1 'Aquí quiero poner la instrucción para ...
  #1 (permalink)  
Antiguo 01/03/2005, 20:32
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 4 meses
Puntos: 6
Salir de bucle do until

Código:
Do until oRS.EOF
if oRS("TABLE_NAME")= (...)
then Response.Write "<br> Ha habido un error, la tabla ya existe."
comprobacion=1
'Aquí quiero poner la instrucción para salir del bucle
end if
oRS.Movenext
loop
Hola, ¿cómo puedo salir del bucle?

Indico con un comentario la línea donde quiero ponerlo.

Habría dos formas, una que sea el "comando" para salir (como aquello de "end for", que vi en otro tópic), y otra que fuera situando el puntero de oRS en el final.
Entonces, aparte de saber cómo salir mediante un comando, querría saber:
¿Cómo podría situar rápidamente el puntero de oRS en el final?

Una forma sería con oRS.length, y haciendo oRS=oRS.length-1 o algo así, pero no sé bien cómo (la sintaxis es lo que no sé).

Saludos

Última edición por un_tio; 01/03/2005 a las 20:34
  #2 (permalink)  
Antiguo 02/03/2005, 06:07
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 21 años, 9 meses
Puntos: 16
Do while not oRS.EOF OR comprobacion=1
if oRS("TABLE_NAME")= (...)
then Response.Write "<br> Ha habido un error, la tabla ya existe."
comprobacion=1
'Aquí quiero poner la instrucción para salir del bucle
end if
oRS.Movenext
loop
  #3 (permalink)  
Antiguo 02/03/2005, 09:19
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 20 años, 6 meses
Puntos: 144
Casi siempre hay una "salida" donde hay una entrada:

EXIT DO

Más info en: http://www.desarrolloweb.com/articulos/175.php?manual=1
  #4 (permalink)  
Antiguo 02/03/2005, 10:08
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 4 meses
Puntos: 6
Ok, gracias.

Muzztein, lo del comprobacion también se podrá poner de manera parecida en un do until, no?

¿Y me respondéis a la duda de cómo situar el cursor de oRS en la última posición?

Saludos
  #5 (permalink)  
Antiguo 02/03/2005, 10:18
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años, 1 mes
Puntos: 0
Do until oRS.EOF
if oRS("TABLE_NAME")= (...)
then Response.Write "<br> Ha habido un error, la tabla ya existe."
comprobacion=1
'Aquí quiero poner la instrucción para salir del bucle
Exit do
end if
oRS.Movenext
loop
  #6 (permalink)  
Antiguo 02/03/2005, 10:27
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 20 años, 6 meses
Puntos: 144
rs.MoveFirst: Cursor en el primer registro de la tabla
rs.MoveLast: Cursor en el último registro de la tabla
rs.MoveNext: Cursor al siguiente registro
rs.MovePrevious: Cursor en el registro anterior
  #7 (permalink)  
Antiguo 02/03/2005, 11:04
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Ya probaste utilizando el.....NO, NO, reitro lo dicho

Código:
Do until oRS.EOF
if oRS("TABLE_NAME")= (...)
then Response.Write "<br> Ha habido un error, la tabla ya existe."
comprobacion=1
'Aquí quiero poner la instrucción para salir del bucle

'1
oRs.MoveLast
'2
Exit Do

end if
oRS.Movenext
loop
Pero te recomiendo que utilices el Exit Do, pues a lo mejor quieras hacer algo mas con el registro en el que se encuentra el recordset...

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
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 22:58.