Poder compactar base

29/07/2003 - 13:23 por Pablo | Informe spam
Hola: Tengo una aplicacion multiusuario que trabaja en una
red local, con una base de datos Access 2000. Cuando
quieor compactar la base de datos, si hay un usuario
conectado a la base no me permite compactarla. Mi pregunta
es, como puedo hacer mediante codigo para desconectar a
todos los usuarios de una base de datos y luego
compactarla?. Gracias
 

Leer las respuestas

#1 Victor Koch
29/07/2003 - 16:49 | Informe spam
Hola Pablo, yo te diría que la abras la DB en forma exclusiva y si te da
error quiere decir que ya esta abierta por otra terminal.
Te envío una forma para saber cuantos usuarios están conectados a la base de
datos, tal vez esto te sirva.

Sub ReturnUserRoster(Base As ADODB.Connection)
JET_SCHEMA_USERROSTER = "{947bb102-5d43-11d1-bdbf-00c04fb92675}"
Dim Rst As ADODB.Recordset
Set Rst = New ADODB.Recordset
Set Rst = Base.OpenSchema(adSchemaProviderSpecific, ,
JET_SCHEMA_USERROSTER)
Do Until Rst.EOF
DEBUG.PRINT Rst("COMPUTER_NAME")
DEBUG.PRINT Rst("LOGIN_NAME")
DEBUG.PRINT Rst("CONNECTED")
DEBUG.PRINT Rst("SUSPECT_STATE")
Rst.MoveNext
Loop
Rst.Close
Set Rst = Nothing
End Sub


Un saludo, Víctor Koch.


"Pablo" escribió en el mensaje
news:0b0901c355c3$e07d0820$
Hola: Tengo una aplicacion multiusuario que trabaja en una
red local, con una base de datos Access 2000. Cuando
quieor compactar la base de datos, si hay un usuario
conectado a la base no me permite compactarla. Mi pregunta
es, como puedo hacer mediante codigo para desconectar a
todos los usuarios de una base de datos y luego
compactarla?. Gracias

Preguntas similares