Vous êtes sur la page 1sur 15

Si es a traves de codigo es esto lo qu tienes que haces: //esto se tiene que poner en general son las variables que

se van a suar pueden ser las que tu quieras Option Explicit Private conexion As ADODB.Connection Private WithEvents record As ADODB.Recordset //esto va en el form Private Sub Form_Load() Set conexion = New ADODB.Connection Set record = New ADODB.Recordset record.LockType = adLockOptimistic record.CursorType = adOpenKeyset With conexion //esta condicion es para evitar escribir la variable conexion varis veces .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & App.Path & "\archivo.mdb; persist security info=False" .Open End With End Sub bueno esto es solo para hacer la conexion a la base de datos en acces

Microsoft Access
Conecta a una base de datos de tipo Access mediante OleDB
Dim path_Bd As String path_Bd = App.Path & "\Nombre.mdb" cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & _ path_Bd & ";" & "User Id=admin;Password="

Conecta a una base de datos Microsoft Access mediante ODBC. Sin password y sin contrasea
cnn.Open "driver={Microsoft Access Driver (*.mdb)};" & _ "dbq=c:\LaBase.mdb;uid=admin;pwd="

Conecta mediante ODBC en modo exclusivo


cnn.open "Driver={Microsoft Access Driver (*.mdb)};" & _ "Dbq=C:\Labase.mdb;Exclusive=1;Uid=admin;Pwd=;"

Para .net mediante OleDB y con Password


cnn.open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=C:\LaBase.mdb;" & _ "Jet OLEDB:Database Password=Password;"

Conecta a una base de datos Microsoft Access mediante OLEDB, usando un Grupo de trabajo
Dim path_Bd As String path_Bd = App.Path & "\Nombre.mdb" cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & path_Bd & ";" & _ "Jet OLEDB:System Database=c:\Archivo.mdw", "User", "Password"

Igual al anterior pero usando ODBC


Dim path_Bd As String path_Bd = "c:\carpta\LaBase.mdb" cnn.Open "driver={Microsoft Access Driver (*.mdb)};" & _ "dbq=" & path_Bd & ";" & _ "systemdb=c:\Archivo.mdw;", _ "usuario", " password "

Conectar a Access 2007


Private Sub Form_Load() Dim cs As String Dim cn As ADODB.Connection Dim sPath_Access As String ' -- Ruta del archivo ACCDB sPath_Access = App.Path & "\base\db.accdb" cs = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _ sPath_Access & ";Persist Security Info=False;" ' -- Access 2007 con password cs = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _ sPath_Access & ";Jet OLEDB:Database Password=contrasea;" cn.Open cs End Sub

Microsoft Sql Server


Cadena de conexin usando OLEDB
cnn.Open "Provider=sqloledb;" & _ "Data Source=Nombre_del_Servidor;" & _ "Initial Catalog=Nombre_de_la_base;" & _ "User Id=USUARIO;Password=PASSWORD"

Usando ODBC
cnn.Open "driver={SQL Server};" & _ "server=NOMBRE_DEL_SERVIDOR;database=LA_BASE;uid=USUARIO;pwd=PASSWORD"

MySql
A un servidor MySql Server mediante OLEDB en .NET
cnn.Open "Provider=MySQLProv;" & "Data Source=base;" & _ "User Id=USUARIO;Password=PASSWORD"

A una base Mysql remota mediante ODBC


cnn.Open "Driver={MySQL ODBC 3.51 Driver};" & _ "Server=data.domain.com;" & _ "Port=3306;Database=LaBase;" & _ "User=USUARIO;Password=PASSWORD;Option=3;"

Base de datos local mediante ODBC


cnn.Open "Driver={MySQL ODBC 3.51 Driver};Server=localhost;" & _ "Database=LaBase;User=Usuario;Password=Password;Option=3;"

Cadenas de conexin para conectar a Microsoft Excel


A un archivo Excel mediante OLEDB
conexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & path_Bd & _ ";Extended Properties=""Excel 8.0;HDR=Yes;"""

Ejemplo : Leer hoja de Excel con ADO

A Excel Mediante ODBC


cnn.Open "driver={Microsoft Excel Driver (*.xls)};" & _ "driverid=790;dbq=c:\libro.xls;" & _ "defaultdir=c:\lacarpeta"

ConnectionString para archivos de texto ( txt, Csv etc..)


ODBC
cnn.Open "DRIVER={Microsoft Text Driver (*.txt; *.csv)};" & _ "DBQ=" & App.Path & ";", "", "" 'Ejemplo para cargar un recordset 'El archivo de texto en la clusula From rs.Open "select * from [ElArchivo#txt]", conn, adOpenStatic, _ adLockReadOnly, adCmdText

Mediante OLEDB
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=Path_De_La_carpeta;" & _ "Extended Properties=""text;HDR=Yes;FMT=Delimited""" rst.Open "select * from ElArchivo.csv", cnn, _ adOpenStatic, adLockReadOnly, adCmdText

Ejemplos : Leer archivo de texto y cargarlo en un DataGrid

FoxPro - Dbf
Conectar por ODBC
Coneccion = "Driver={Microsoft dBASE Driver (*.dbf)};" & _ "DriverID=277;Dbq=c:\Path_de_carpeta;"

OLEDB
Connection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=c:\La_Carpeta;" & _ "Extended Properties=dBASE IV;" & _ "User ID=Admin;Password=;"

Gua de proveedores OLEDB


Este es un proyecto publicado en el sitio Planet source Code, que implementa una gua con una lista variada de proveedores OLEDB. Esta lista se despliega en un Treeview, por ejemplo: Para conectar a Excel, Exchange, mySQL, SQL server, SQL server via SqlXmlOLEDB, archivos de texto, para Visual Fox Pro, SQLBase, OLAP, syBase, Active Directory, AS/400 y varios otros Al seleccionar un item ( Proveedor), en el panel derecho visualiza las diferentes cadenas de conexin que se pueden utilizar para cada caso: Conectar con seguridad estndar, conectar a una base de datos remota, especificando un usuario concreto etc .. De esta manera podemos copiar la cadena de conexin y utilizarla. Descargar cdigo fuente Captura de pantalla

Bibligrafa: http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/296connectionstring-ado.htm

Hola Amigos ya tenia mucho tiempo que no me pasaba por estos maravillosos foros un saludo a todos: Bueno mi pregunta: Cual seria la cadena de conexin para Access 2010 con visual basic 6.0 y un sistema operativo de Windows Seven de 64 Bits ya se que me van a decir que me pase a NET y otras cosas pero por el momento me lo piden asi, ya hare tambien la sugerencia de NET. la cuestion es que para hacer cadenas de conexin entre Access 2010 con visual basic 6.0 y utilizar windows XP es asi: Cdigo:
With cnn .CursorLocation = adUseClient .Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _

App.Path & "\TuBDl.accdb;" & "Jet OLEDB:Database Password=TuPassword" End With

pero esto en windows Seven de 64 Bits no me funciona me dice: Cdigo:


NO SE ENCONTRO EL PROVEEDOR ESPCIFICADO

cualquier aporte se agradece. Saludos.

Ac dejo el codigo que escrib, todavia no cree la base de datos asique no lo puede probar, pero me gustara que me digan si se lo puede optimizar un poco o algunas idas con respecto al codigo. Es un modulo. La llamado AccessDB.bas, donde hay 4 funciones: 1. Abrir la conexin 2. Consultas SQL 3. Ingreso de Actualizaciones hacia la BD (Ingreso de un nuevo Registro, Modificacin de un registro, Eliminacion de un registro) 4. Cerrar la conexion. Escrito por AccessBD.bas Option Explicit Public AccessConexion As ADODB.Connection Public Function AbrirConexion(NombreBD As String) '_________________________________________________ ___________________________ 'Esta funcin lo que permite es abrir y establecer la coneccin con Access. '_________________________________________________ ___________________________ Dim ErrorBD As ADODB.Error On Error GoTo Error Set AccessConexion = New ADODB.Connection With AccessConexion .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\Base de Datos\" & NombreBD & ";" .Open End With Exit Function Error: For Each ErrorBD In AccessConexion.Errors MsgBox ("Error VB:" & ErrorBD.Number & vbCrLf _

& "Error Access:" & ErrorBD.NativeError & vbCrLf _ & "Error SQL:" & ErrorBD.SQLState & vbCrLf _ & "Generado Por:" & ErrorBD.Source & vbCrLf _ & "Descripcin:" & ErrorBD.Description) Next End Function Public Function ConsultaSQL(StrSQL As String) As Recordset '_________________________________________________ _________________________________________ 'Esta funcin lo que hace es ejecutar una consulta SQL y devolver el resultado de la misma '_________________________________________________ _________________________________________ Dim ErrorBD As ADODB.Error On Error GoTo Error Set ConsultaSQL = New Recordset ConsultaSQL.Open StrSQL, AccessConexion, OpenDynamic, adLockOptimistic Exit Function Error: For Each ErrorBD In AccessConexion.Errors MsgBox ("Error VB:" & ErrorBD.Number & vbCrLf _ & "Error Access:" & ErrorBD.NativeError & vbCrLf _ & "Error SQL:" & ErrorBD.SQLState & vbCrLf _ & "Generado Por:" & ErrorBD.Source & vbCrLf _ & "Descripcin:" & ErrorBD.Description) Next End Function Public Function ActualizarBD(StrSQL As String, StrBaseDatos As String) As Recordset '_________________________________________________ __________________________________________________ ____________ 'Esta funcion actualiza la base de datos ya sea el agregado de un nuevo registro como modificacion o eliminacion '_________________________________________________ __________________________________________________ ____________ Dim ErrorBD As ADODB.Error On Error GoTo Error Set ActualizarBD = New Recordset ActualizarBD.Open ActualizarBD = AccessConexion.Execute(StrSQL) ActualizarBD.Update

Exit Function Error: For Each ErrorBD In AccessConexion.Errors MsgBox ("Error VB:" & ErrorBD.Number & vbCrLf _ & "Error Access:" & ErrorBD.NativeError & vbCrLf _ & "Error SQL:" & ErrorBD.SQLState & vbCrLf _ & "Generado Por:" & ErrorBD.Source & vbCrLf _ & "Descripcin:" & ErrorBD.Description) Next End Function Public Function cerrarconexion() '_________________________________________________ ___________________ 'Esta funcin lo que hace es cerrar la conexin con la base de datos. '_________________________________________________ ___________________ Dim ErrorBD As ADODB.Error On Error GoTo Error AccessConexion.Close Set AccessConexion = Nothing Exit Function Error: For Each ErrorBD In AccessConexion.Errors MsgBox ("Error VB:" & ErrorBD.Number & vbCrLf _ & "Error Access:" & ErrorBD.NativeError & vbCrLf _ & "Error SQL:" & ErrorBD.SQLState & vbCrLf _ & "Generado Por:" & ErrorBD.Source & vbCrLf _ & "Descripcin:" & ErrorBD.Description) Next End Function Desde ya muchas gracias!

Ac dejo el codigo que escrib, todavia no cree la base de datos asique no lo puede probar, pero me gustara que me digan si se lo puede optimizar un poco o algunas idas con respecto al codigo. Es un modulo. La llamado AccessDB.bas, donde hay 4 funciones: 1. Abrir la conexin 2. Consultas SQL 3. Ingreso de Actualizaciones hacia la BD (Ingreso de un nuevo Registro, Modificacin de un registro, Eliminacion de un registro) 4. Cerrar la conexion. Escrito por AccessBD.bas

Option Explicit Public AccessConexion As ADODB.Connection Public Function AbrirConexion(NombreBD As String) '_________________________________________________ ___________________________ 'Esta funcin lo que permite es abrir y establecer la coneccin con Access. '_________________________________________________ ___________________________ Dim ErrorBD As ADODB.Error On Error GoTo Error Set AccessConexion = New ADODB.Connection With AccessConexion .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\Base de Datos\" & NombreBD & ";" .Open End With Exit Function Error: For Each ErrorBD In AccessConexion.Errors MsgBox ("Error VB:" & ErrorBD.Number & vbCrLf _ & "Error Access:" & ErrorBD.NativeError & vbCrLf _ & "Error SQL:" & ErrorBD.SQLState & vbCrLf _ & "Generado Por:" & ErrorBD.Source & vbCrLf _ & "Descripcin:" & ErrorBD.Description) Next End Function Public Function ConsultaSQL(StrSQL As String) As Recordset '_________________________________________________ _________________________________________ 'Esta funcin lo que hace es ejecutar una consulta SQL y devolver el resultado de la misma '_________________________________________________ _________________________________________ Dim ErrorBD As ADODB.Error On Error GoTo Error Set ConsultaSQL = New Recordset ConsultaSQL.Open StrSQL, AccessConexion, OpenDynamic, adLockOptimistic Exit Function Error: For Each ErrorBD In AccessConexion.Errors MsgBox ("Error VB:" & ErrorBD.Number & vbCrLf _

& "Error Access:" & ErrorBD.NativeError & vbCrLf _ & "Error SQL:" & ErrorBD.SQLState & vbCrLf _ & "Generado Por:" & ErrorBD.Source & vbCrLf _ & "Descripcin:" & ErrorBD.Description) Next End Function Public Function ActualizarBD(StrSQL As String, StrBaseDatos As String) As Recordset '_________________________________________________ __________________________________________________ ____________ 'Esta funcion actualiza la base de datos ya sea el agregado de un nuevo registro como modificacion o eliminacion '_________________________________________________ __________________________________________________ ____________ Dim ErrorBD As ADODB.Error On Error GoTo Error Set ActualizarBD = New Recordset ActualizarBD.Open ActualizarBD = AccessConexion.Execute(StrSQL) ActualizarBD.Update Exit Function Error: For Each ErrorBD In AccessConexion.Errors MsgBox ("Error VB:" & ErrorBD.Number & vbCrLf _ & "Error Access:" & ErrorBD.NativeError & vbCrLf _ & "Error SQL:" & ErrorBD.SQLState & vbCrLf _ & "Generado Por:" & ErrorBD.Source & vbCrLf _ & "Descripcin:" & ErrorBD.Description) Next End Function Public Function cerrarconexion() '_________________________________________________ ___________________ 'Esta funcin lo que hace es cerrar la conexin con la base de datos. '_________________________________________________ ___________________ Dim ErrorBD As ADODB.Error On Error GoTo Error AccessConexion.Close Set AccessConexion = Nothing Exit Function Error: For Each ErrorBD In AccessConexion.Errors

MsgBox ("Error VB:" & ErrorBD.Number & vbCrLf _ & "Error Access:" & ErrorBD.NativeError & vbCrLf _ & "Error SQL:" & ErrorBD.SQLState & vbCrLf _ & "Generado Por:" & ErrorBD.Source & vbCrLf _ & "Descripcin:" & ErrorBD.Description) Next End Function Desde ya muchas gracias!

Conecta a una base de datos de tipo Access mediante OleDB


Dim path_Bd As String path_Bd = App.Path & "\Nombre.mdb" cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & _ path_Bd & ";" & "User Id=admin;Password="

Conecta a una base de datos Microsoft Access mediante ODBC. Sin password y sin contrasea
cnn.Open "driver={Microsoft Access Driver (*.mdb)};" & _ "dbq=c:\LaBase.mdb;uid=admin;pwd="

Conecta mediante ODBC en modo exclusivo


cnn.open "Driver={Microsoft Access Driver (*.mdb)};" & _ "Dbq=C:\Labase.mdb;Exclusive=1;Uid=admin;Pwd=;"

Para .net mediante OleDB y con Password


cnn.open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=C:\LaBase.mdb;" & _ "Jet OLEDB:Database Password=Password;"

Conecta a una base de datos Microsoft Access mediante OLEDB, usando un Grupo de trabajo
Dim path_Bd As String path_Bd = App.Path & "\Nombre.mdb" cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & path_Bd & ";" & _ "Jet OLEDB:System Database=c:\Archivo.mdw", "User", "Password"

Igual al anterior pero usando ODBC


Dim path_Bd As String path_Bd = "c:\carpta\LaBase.mdb" cnn.Open "driver={Microsoft Access Driver (*.mdb)};" & _ "dbq=" & path_Bd & ";" & _ "systemdb=c:\Archivo.mdw;", _ "usuario", " password "

Microsoft Sql Server

Cadena de conexin usando OLEDB


cnn.Open "Provider=sqloledb;" & _ "Data Source=Nombre_del_Servidor;" & _ "Initial Catalog=Nombre_de_la_base;" & _ "User Id=USUARIO;Password=PASSWORD"

Usando ODBC
cnn.Open "driver={SQL Server};" & _ "server=NOMBRE_DEL_SERVIDOR;database=LA_BASE;uid=USUARIO;pwd=PASSWORD"

MySql

A un servidor MySql Server mediante OLEDB en .NET


cnn.Open "Provider=MySQLProv;" & "Data Source=base;" & _ "User Id=USUARIO;Password=PASSWORD"

A una base Mysql remota mediante ODBC


cnn.Open "Driver={MySQL ODBC 3.51 Driver};" & _ "Server=data.domain.com;" & _ "Port=3306;Database=LaBase;" & _ "User=USUARIO;Password=PASSWORD;Option=3;"

Base de datos local mediante ODBC


cnn.Open "Driver={MySQL ODBC 3.51 Driver};Server=localhost;" & _

"Database=LaBase;User=Usuario;Password=Password;Option=3;"

Cadenas de conexin para conectar a Microsoft Excel

A un archivo Excel mediante OLEDB


conexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & path_Bd & _ ";Extended Properties=""Excel 8.0;HDR=Yes;""" A Excel Mediante ODBC cnn.Open "driver={Microsoft Excel Driver (*.xls)};" & _ "driverid=790;dbq=c:\libro.xls;" & _ "defaultdir=c:\lacarpeta"

ConnectionString para archivos de texto ( txt, Csv etc..)

ODBC
cnn.Open "DRIVER={Microsoft Text Driver (*.txt; *.csv)};" & _ "DBQ=" & App.Path & ";", "", "" 'Ejemplo para cargar un recordset 'El archivo de texto en la clusula From rs.Open "select * from [ElArchivo#txt]", conn, adOpenStatic, _ adLockReadOnly, adCmdText

Mediante OLEDB
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=Path_De_La_carpeta;" & _ "Extended Properties=""text;HDR=Yes;FMT=Delimited""" rst.Open "select * from ElArchivo.csv", cnn, _ adOpenStatic, adLockReadOnly, adCmdText

FoxPro - Dbf

Conectar por ODBC


Coneccion = "Driver={Microsoft dBASE Driver (*.dbf)};" & _

"DriverID=277;Dbq=c:\Path_de_carpeta;"

OLEDB
Connection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=c:\La_Carpeta;" & _ "Extended Properties=dBASE IV;" & _ "User ID=Admin;Password=;"

Fuente de: http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visualbasic/296-connectionstring-ado.htm

Vous aimerez peut-être aussi