VERIFICAR SI LA BD ESTA ABIERTA

Perla
16 de Octubre del 2003
Hola
Como le puedo hacer para verificar si mi bd esta abierta o no, osea si se encuentra cerrada que abra la bd y si esta cerrada la bd que la abra.En sintaxis como sería?
Espero me puedan ayudar porfavor.
Gracias

Susi?
16 de Octubre del 2003
IF DB.STATE=1 THEN
"ABIERTA"
ELSE
"CERRADA"

sdemingo
16 de Octubre del 2003
Hola,
puedes hacerlo controlando el error que te da VB cuando intentas cerrar una BBDD cerrada o abrir una BBDD abierta.

Puedes llamar a la función a escribo a continuación así para abrirla:
If comprobarConexion(oConexion, "A") Then
' Haces lo que quieras porque acabas de abrir la BBDD sin que te de error
End If

Así para cerrarla:
If comprobarConexion(oConexion, "C") Then
' Haces lo que quieras porque acabas de cerrar la BBDD sin que te de error
End If

' Función que chequea si la BBDD está abierta o cerrada
Function comprobarConexion(oConexion as ADODB.Connection, strAccion as String) As Boolean

On Error GoTo errorConexion

comprobarConexion = True

If strAccion = "A" Then
oConexion.Open "C:BaseDatos.mdb"
ElseIf strAccion = "C" Then
oConexion.Close
End If

Exit Sub
' ERROR
errorConexion:
If Err.Number = 3705 Then
msgbox "La base de datos ya se encuentra abierta"
comprobarConexion = False
ElseIf Err.Number = 3704 Then
msgbox "La base de datos ya se encuentra cerrada"
comprobarConexion = False
End If

End Sub


Un saludo
sdemingo