DIFERENTES MANERAS DE ABRIR UNA BASE DE DATOS DE ACCESS 97 Y 2000

Les adjunto un archivo que contiene un compendio de métodos (nó están todos por supuestos si no los mas comunes) para abrir y manejar bases de datos de access 97 y 2000 con y sin password tanto desde los data control como desde los controles Ado y/o desde línea de código...
Abrir una Tabla de Fox o dBase o... desde código

Menu Proyecto->Referencias Seleccionar DAO 3.51

Dim dbs As DAO.Database
Dim rs As DAO.Recordset

Set dbs = OpenDatabase("C:\Via\", True, False, "FoxPro 2.5")
Set rs = dbs.OpenRecordset("Libros")


Abrir Base de Datos de Access 97 Sin PassWord para asociarla con un Control Data

Insertar un Control DATA

Desde Código

Data1.DatabaseName = "c:\Via\ACCESS97.MDB"
Data1.RecordSource = "Tabla"
Data1.Refresh

ó

En la Ventana de Propiedades del Objeto

DatabaseName = "c:\Via\ACCESS97.MDB"
RecordSource = "Tabla"


Abrir Base de Datos de Access 97 con PassWord para asociarla con un Control Data

Insertar un Control DATA

Desde Código

Dim cPass as String
Dim Clave as String
Clave = "Password"
cPass = ";PWD=" & Clave

Data1.DatabaseName = "c:\Via\ACCESS97.MDB"

Data1.RecordSource = "Tabla"

Data1.Connect = cPass

Data1.Refresh


Abrir Base de Datos de Access 97 SIN PassWord desde Código y Sin Data Control

Menu Proyecto->Referencias Seleccionar DAO 3.51

Dim dbs As DAO.Database
Dim rs As DAO.Recordset

Set dbs = OpenDatabase("C:\Via\ACCESS97.MDB", True, False,)
Set rs = dbs.OpenRecordset("Tabla")


Abrir Base de Datos de Access 97 CON PassWord desde Código y Sin Data Control

Menu Proyecto->Referencias Seleccionar DAO 3.51

Dim dbs As DAO.Database
Dim rs As DAO.Recordset
Dim cPass as String
Dim Clave as String

Clave = "Password"
cPass = ";PWD=" & Clave

Set dbs = OpenDatabase("C:\Via\ACCESS97.MDB", True, False, cPass) 'no se deben omitir el segundo ni el tercer parámetro para que entre el password
Set rs = dbs.OpenRecordset("Tabla")


Abrir Base de Datos de Access 2000 Sin PassWord para asociarla con un Control Data

Insertar un Control DATA y no especificarle nada en la ventana de propiedades
si se desea ver los datos en una grilla, insertar un "bound dbgrid" y asociarlo al Control Data

Desde Código

Menu Proyecto->Referencias Seleccionar DAO 3.6

en algun procedimiento...

Dim dbsdao36 As DAO.Database
Dim rs As DAO.Recordset

Set dbsdao36 = OpenDatabase("Base de Datos.mdb", False, False)
Set rs = dbsdao36.OpenRecordset("Tabla")
Set Data1.Recordset = rs


Abrir Base de Datos de Access 2000 CON PassWord para asociarla con un Control Data

Insertar un Control DATA y no especificarle nada en la ventana de propiedades
si se desea ver los datos en una grilla, insertar un "bound dbgrid" y asociarlo al Control Data

Desde Código

Menu Proyecto->Referencias Seleccionar DAO 3.6

en algun procedimiento...

Dim dbsdao36 As DAO.Database
Dim rs As DAO.Recordset
Dim cPas As String

cPas = ";pwd=password"

Set dbsdao36 = OpenDatabase("Base de Datos.mdb", False, False, cPas)
Set rs = dbsdao36.OpenRecordset("Tabla")
Set Data1.Recordset = rs
Abrir Base de Datos de Access 2000 SIN PassWord desde Código y Sin Data Control

Menu Proyecto->Referencias Seleccionar DAO 3.6

Dim dbsdao36 As DAO.Database
Dim rsdao36 As DAO.Recordset

Set dbsdao36 = OpenDatabase("C:\Via\ACCESS2000.MDB", True, False,)
Set rsdao36 = dbs.OpenRecordset("Tabla")


Abrir Base de Datos de Access 97 CON PassWord desde Código y Sin Data Control

Menu Proyecto->Referencias Seleccionar DAO 3.6

Dim dbsDao36 As DAO.Database
Dim rsDao36 As DAO.Recordset
Dim cPass as String
Dim Clave as String

Clave = "Password"
cPass = ";PWD=" & Clave

Set dbsDao36 = OpenDatabase("C:\Via\ACCESS2000.MDB", True, False, cPass) 'no se deben omitir el segundo ni el tercer Parámetro para que entre el password
Set rsDao36 = dbs.OpenRecordset("Tabla")


Abrir Base de Datos de Access 97 Sin PassWord para asociarla con un Control ADO

Insertar un Control ADO

Desde Código

Dim Clave as String
Clave = ""

Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;" _
& "Data Source=" & "ACCESS97.MDB" & ";" _
& "Persist Security Info=False;" _
& "Jet OLEDB:Database Password=" & Clave 'jet 3.51 para access 97

Adodc1.Mode = adModeRead ' elejir el modo
Adodc1.RecordSource = "Tabla"
Adodc1.Refresh


Abrir Base de Datos de Access 97 Sin PassWord para asociarla con un Control ADO

Insertar un Control ADO

Desde Código

Dim Clave as String
Clave = "password"

Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;" _
& "Data Source=" & "ACCESS97.MDB" & ";" _
& "Persist Security Info=False;" _
& "Jet OLEDB:Database Password=" & Clave 'jet 3.51 para access 97

Adodc1.Mode = adModeRead ' elejir el modo
Adodc1.RecordSource = "Tabla"
Adodc1.Refresh


Abrir Base de Datos de Access 2000 Sin PassWord para asociarla con un Control ADO

Insertar un Control ADO

Desde Código

Dim Clave as String
Clave = ""

Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=" & "ACCESS97.MDB" & ";" _
& "Persist Security Info=False;" _
& "Jet OLEDB:Database Password=" & Clave 'jet 4.0 para access 2000

Adodc1.Mode = adModeRead ' elejir el modo
Adodc1.RecordSource = "Tabla"
Adodc1.Refresh


Abrir Base de Datos de Access 2000 Sin PassWord para asociarla con un Control ADO

Insertar un Control ADO

Desde Código

Dim Clave as String
Clave = "password"

Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=" & "ACCESS97.MDB" & ";" _
& "Persist Security Info=False;" _
& "Jet OLEDB:Database Password=" & Clave 'jet 4.0 para access 2000

Adodc1.Mode = adModeRead ' elejir el modo
Adodc1.RecordSource = "Tabla"
Adodc1.Refresh


Gracias a Pílades