Visual Basic - BD con password, exclusivo?

Life is soft - evento anual de software empresarial
 
Vista:

BD con password, exclusivo?

Publicado por Javi G M (36 intervenciones) el 23/03/2001 12:59:21
Tengo una ficherito Access 97 con contraseña. Y no consigo acceder a mi base con un control ADO. Al especificarle la contraseña en Propiedades del control Ado (Conexion). Me da "Error en la prueba de conexión. Falta el archivo de inform. del grupo de trabajo o está abierto en modo exclusivo por otro usuario" (no tengo abierta la bd).

Alguien sabe como puedo solucionarlo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:BD con password, exclusivo?

Publicado por Christian Valeria Celedón (217 intervenciones) el 24/03/2001 04:50:16
Lo primero que debes hacer es crearte un Origen de Datos ODBC. Para eso, ve al Panel de Control y ejecuta <<Fuentes de Datos ODBC (32 bits)>>. Luego haz click en el Botón <<Agregar>>. Marca el controlador "Microsoft Access Driver (*.mdb)" y haz click en <<Finalizar>>. Se te abrirá una pantalla llamada "Instalación de ODBC para Microsoft Access". Escribe un Nombre de Origen de Datos (Puede ser cualquiera como por ejemplo "OdbcTest". La descripción es opcional). Luego haz click en el botón <<Seleccionar>> y busca la Base de Datos que deseas abrir desde tu programa (Supongamos que se llama C:\Archivo.mdb). Haz click en <<Aceptar>> y luego otra vez <<Aceptar>> en la otra pantalla. Ahora prueba el siguiente código en Visual Basic (Puede ser en el Load de un formulario)

Dim StrConect As String
Dim DBPath as String
Dim Login as String
Dim Password as String
Dim DB as ADODB.Connection

'Aquí va la ruta de tu Base de Datos
DBPath = "C:\Archivo.mdb"

'Este Login viene por defecto en Access
Login = "admin"

'Aquí va la contraseña de tu Base de Datos
Password = "123456"

'Configura la cadena de conexión
StrConect = "DSN=OdbcTest;
StrConect = StrConect & "DBQ=" & DBPath & ";"
StrConect = StrConect & "DriverId=281;"
StrConect = StrConect & "FIL=MS Access;"
StrConect = StrConect & "MaxBufferSize=2048;"
StrConect = StrConect & "PageTimeout=5;"
StrConect = StrConect & "PWD=" & Password & ";"
StrConect
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:BD con password, exclusivo? II

Publicado por Christian Valeria Celedón (217 intervenciones) el 24/03/2001 04:53:21
'Configura la cadena de conexión
StrConect = "DSN=OdbcTest;
StrConect = StrConect & "DBQ=" & DBPath & ";"
StrConect = StrConect & "DriverId=281;"
StrConect = StrConect & "FIL=MS Access;"
StrConect = StrConect & "MaxBufferSize=2048;"
StrConect = StrConect & "PageTimeout=5;"
StrConect = StrConect & "PWD=" & Password & ";"
StrConect = StrConect & "UID=" & Login & ";"

Set DB = New ADODB.Connection
DB.ConnectionTimeout = 30
DB.CursorLocation = adUseClient
DB.Open StrConect
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:BD con password, exclusivo? III

Publicado por Christian Valeria Celedón (217 intervenciones) el 24/03/2001 04:54:26
Ahora ya puedes manipular el objeto DB. Para abrir una tabla puedes usar el siguiente código (Es el que yo uso y funciona bastante bien)

Public Function OpenRS(cSQL As String, DB as ADODB.Connection) As ADODB.Recordset
Dim CMD As ADODB.Command
Set CMD = New ADODB.Command
With CMD
Set .ActiveConnection = DB
.CommandText = cSQL
.CommandType = adCmdText
End With
Set OpenRS = New ADODB.Recordset
OpenRS.CursorType = adOpenForwardOnly
OpenRS.LockType = adLockReadOnly
OpenRS.CursorLocation = adUseClient
Set OpenRS.Source = CMD
OpenRS.Open
End Function

Puedes probarlo de la siguiente forma (Supongamos que tienes una tabla llamada "Tabla")

Dim RS As ADODB.Recordset
Set RS = OpenRS("Select * From Tabla", DB)
Debug.Print RS.Fields(0)

Todo lo anterior lo probé con Access 2000 y funcionó bastante bien. Me imagino que con Access 97 debe suceder lo mismo.
Espero que te resulte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar