Visual Basic Foro

Programación => Bases de Datos => Mensaje iniciado por: lucius en Noviembre 14, 2011, 01:35:02 am

Título: Detectar el recordset vacio
Publicado por: lucius en Noviembre 14, 2011, 01:35:02 am
He visto varias formas pero no se cual es la diferencia entre estas:
If (.EOF Or .BOF) Then msgbox "No hay registros" 'Logicamente aqui es True por default osea If (.EOF Or .BOF) = True Then..
If (.BOF And .EOF) Then msgbox "No hay registros"
If .RecordCount = 0 Then msgbox "No hay registros"
If .RecordCount = Empty Then msgbox "No hay registros"

Que alguien me explique?
Título: Re:Detectar el recordset vacio
Publicado por: raul338 en Noviembre 14, 2011, 05:48:08 am
Yo uso esto

Código: (vb) [Seleccionar]
Public Function SQL_Ejecutar(consulta As string, rs As RecordSet) As Long
    Set rs = ..... ' Abris/mandas a ejecutar la consulta
    If Not rs Is Nothing Then
         SQL_Ejecutar = 1 ' Funciono, pero no hay registros
         If rs.State = adStateOpen Then
             If rs.RecordCount <> 0 Then
                 SQL_Ejecutar = 2 ' Funciono y hay registros :)
             End If
         End If
    End If
End Function
Te recomiendo usar constantes o una enumeracion para los valores devueltos :P
0 - Error
1 - Sin registros
2 - OK
Título: Re:Detectar el recordset vacio
Publicado por: lucius en Noviembre 25, 2011, 11:41:17 pm
Esta buena la funcion con eso ya solucione, deje abandonado el tema pero aqui estoy, saludos