Visual Basic - Relacionar Access y VB con ADO

Life is soft - evento anual de software empresarial
 
Vista:

Relacionar Access y VB con ADO

Publicado por Beatriz (11 intervenciones) el 05/02/2007 19:56:23
Buenas tardes a todos:

Estoy intentando relacionar un proyecto en VB, mediante un control ado, con una base de datos. Tengo la Version 6.0 y la base de datos es es access 2003. La he convertido a 97, pero me dice en todos los casos: Interfaz no compatible.

¿? ¿ Sabe alguien qué estoy haciendo mal ?? Muchas gracias por su atención. Un saludo.
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:Relacionar Access y VB con ADO

Publicado por pako (52 intervenciones) el 05/02/2007 20:50:10
Cómo estás conectando la base de datos?
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:Relacionar Access y VB con ADO

Publicado por Beatriz (11 intervenciones) el 05/02/2007 22:07:02
Buenas tardes pakito, muchas gracias por adelantado. Lo estoy intentando conectar mediante Adodc1. Al entrar en las propìedades de ADODC, en Origen de Conexión intento acceder a la base de datos. No obstante no me sale como predeterminado los archivos .mdb.Pongo todos los archivos, lo busco, pero nada. No accede a la b.d. y me sale el aviso de INTERFAZ NO COMPATIBLE.
Un millón de gracias, saludos,

Bea
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:Relacionar Access y VB con ADO

Publicado por pako (52 intervenciones) el 05/02/2007 22:31:38
Buenas tardes Beatriz, no sé si has entendido mi pregunta o es que no la quieres contestar.
¿Cómo estas conectando a la base de datos? (código)
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:Relacionar Access y VB con ADO

Publicado por Beatriz (11 intervenciones) el 05/02/2007 22:45:49
Pues no he intentado meter código al darme ese aviso, ya que al ir a relacionar con la tabla, tampoco podía; logicamente, al intentar relacionar los campos, no me salía un combo con los campos de la b.d.
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:Relacionar Access y VB con ADO

Publicado por pako (52 intervenciones) el 05/02/2007 22:57:50
Vale tia, entendido. Ya te contesto en otra ocasión que ahora me pilla mal
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:Relacionar Access y VB con ADO

Publicado por Beatriz (11 intervenciones) el 05/02/2007 23:09:02
Lo he conseguido con un control DATA. Aunque agradecería que si alguien me puede indicar que estoy haciendo mal para relacionarlo mediante ADOC, me gustaría me lo comunicase, ya que tengo un libro bastante bueno de VB, y lo valora mucho, así que me quedo un poco por las ganas, pero bueno lo importante es practicar y con ello aprender.
Gracias pako y a todos lo que hacen posible este foro.
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:Relacionar Access y VB con ADO

Publicado por PQP (4 intervenciones) el 05/02/2007 23:41:01
Hola Beatriz,

Por lo que me doy cuenta estas tratando de crear el String de conexion via Pagina de propiedades, y no por codigo, esto es una desventaja pues en tiempo de ejecucion la base de datos la tienes que dejar en la misma carpeta en donde creaste la conexion, para poder ayudarte mejor, deberias proporcionar un poco mas de informacion, por ejemplo el Proveedor que usas, ejem. OLEDB 4.0, con ese no deberias tener problemas para accesar a la B.D. en el formato de access que sea.

Espero haber ayudado.

Saludos

Pablo
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:Relacionar Access y VB con ADO

Publicado por Beatriz (11 intervenciones) el 06/02/2007 12:35:07
Gracias Pablo por el consejo. Estoy un poco verde.¿Me podrías decir como sé el Proveedor que uso? Si realizo la conexión por código, debo introducir el control, o el código sustituye al control?

De nuevo, gracias
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:Relacionar Access y VB con ADO

Publicado por PQP (4 intervenciones) el 06/02/2007 14:22:03
Hola Beatriz,

El proveedor es quien te proporciona acceso a los distintos motores de BD. por ejemplo OLEDB para Microsoft Jet, OLEDB para SQL SERVER... ORACLE, etc. Para acceder a Access en cualquiera de sus formatos debemos utilizar Microsoft Jet, con este proveedor no deberías tener ningun problema con access. Un ejemplo de conexion:

Blobal Const gDBase = "\MiDataBase.mdb"
Global gConnect as String
Global gCN as New ADODB.Connection

Public Sub OpenConnection()
Set gCN = Nothing
gConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & gDBase & ";Persist Security Info=False;Jet OLEDB:Database Password=1236"
' Debug.Print gConnect
gCN.ConnectionTimeout = 10
Call gCN.Open(gConnect)
End Sub

Este ejemplo te sirve para establecer una conexión a la BD y usarla para abrir Recordsets y usar la cadena de conexión para abrir controles ADODC en su propiedad ConnectionString. Ejm:

adodc1.ConnectionString = gConnect ' Donde esta variable es global y contiene la cadena de conexión.
adodc1.Refresh

Espero haberte ayudado.

Saludos

Pablo
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:Relacionar Access y VB con ADO

Publicado por deyvi (1 intervención) el 10/02/2007 03:12:10
deseo un trabajo que use la aplicacion ado para una facturacion ... por favor deseo q me lo envie lo mas pronto posible mi direccion de correo electronico ,[email protected] su ayuda.
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:Relacionar Access y VB con ADO

Publicado por Beatriz (11 intervenciones) el 11/02/2007 17:51:33
Buenas tardes.
Disculpen la tardanza, lo es que esté desaparecida, es que aún no he dado con la solución.
Gracias Paco por el código, pero no me sale. No sé que es lo que hago mal, me indica que no encuentra el origen y que no especifiqué un controlador.
Cuando ejecuto, me señala adodc1.refresh:

Global Const gBase = "\GALVAZ97.mdb"
Global gConnect As String
Global gcn As New ADODB.Connection
Set gcn = Nothing
gConnect = " Provider = Microsoft.jet.oledb.3.51; Data Source = " & App.Path & gBase & "; Persist Security Info=False;"
'Debug.print gConnect
gcn.ConnectionTimeout = 10
Call gcn.Open(gConnect)

Private Sub Form_Load()
Adodc1.ConnectionString = gConnect
Adodc1.Refresh
End Sub

Private Sub cmdOK_Click()

On Error GoTo Err_Local
With Data1
.FindFirst "[usuario]= '" & txtUserName & "'"
If .NoMatch Then
MsgBox " No hay ningún Usuario con ese nombre", vbExclamation, "Error"
If MsgBox("¿Quieres añadir un nuevo usuario?" & vbCrLf & "Si o No?.......", vbInformation + vbYesNo, "Añadir ? ") = vbNo Then
Exit Sub
...........
...........
..........

He buscado, por si había otra forma más sencilla, o que no tuviera opciones a meter la pata, pero no lo consigo de ningún modo. He probado tambien a indicar la direccion completa de acceso a la b.d. pero aún así tampoco.

Muchas gracias de nuevo Paco, saludos, jeje voy a seguir con ello
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:Relacionar Access y VB con ADO

Publicado por Beatriz (11 intervenciones) el 11/02/2007 18:18:05
NOTA:Disculpen, es que estuve haciendo pruebas con data por si acaso pero me da error de todos modos en txtUserName, porque lo desconoce, y se me olvidó modificarlo y hago referecia a él en sub cmdOK_clic, no obstante me da error de igual forma antes.

Saludos, sigo con ello, a ver si lo consigo.
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:Relacionar Access y VB con ADO

Publicado por Unomásnomás (77 intervenciones) el 13/02/2007 01:00:30
A ver Beatriz.. veo q no evolucionó mucho tu estado con las respuestas q te han dado...
yo te sugiero otra forma... pero es omitiendo el control ADODC.
Osea es usando la clase ADODB q seguro debes tenerla instalada.. entonces ya no harías el enlace en tiempo de diseño sino en tiempo de ejecución ya q en el codigo tienes q indicarle el obj txt con que campo va a estar unido.. ej:
txtNombre.text = rstTuSelect.Fields("TuCampoX")

entonces tmb debes crear tu recordset..
espero te sirva y salgas de ese enredo q tienes ahora....
Suerte
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:Relacionar Access y VB con ADO

Publicado por barca1010 (132 intervenciones) el 15/02/2007 16:55:05
Hola. yo te puedo aconsejar que uses un ODBC y luego escribas esto en tu rutina

dim Cn as ADODB.Connection
dim Rs as ADODB.Recordset

set Cn = New ADODB.Conection
set Rs = New ADODB.Recordset

with Cn
.ConnectionString = "DSN= (el nombre del obdc que creaste), uid=;pass=;"
.open
end with

set rs.ActiveConnection =cn
rs.CursorType = adOpenStatic
rs.LockType = adLockOptimistic

with rs
.Open (SELECT.............)
end with

set cn = nothing
set rs = nothing

espero que esta rutina si te funcione, no te olvides de crear el ODBC en las Herramientas administrativas del Panel de control
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:Relacionar Access y VB con ADO

Publicado por RYURIK (2 intervenciones) el 16/03/2007 20:34:39
AQUI TE DEJO UN CODIGO QUIZAS ES UN POCO TARDE PERO BUE AHI TU SI TE SIRVE.
EN GENERAL
******************************************************************************************
Option Explicit

Private cnn As ADODB.Connection

Private WithEvents rst As ADODB.Recordset
*****************************************************************************************
Private Sub Form_Load()

' ¡ACUERDATE DE PONER EL PATH CORRECTO!
Const sPathBase As String = "C:\TU DIRECCION.MDB"

' Crear los objetos
Set cnn = New ADODB.Connection
Set rst = New ADODB.Recordset
'
' Crear la conexión manualmente
' Usar "Provider=Microsoft.Jet.OLEDB.3.51;" para bases de Access 97
' Usar "Provider=Microsoft.Jet.OLEDB.4.0;" para bases de Access 2000
With cnn
.ConnectionString = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & sPathBase & ";"
.Open
End With

' Indicarle de que tabla vamos a leer los datos
'***********************************************
rst.Open "SELECT * FROM TABLA", cnn, adOpenDynamic, adLockOptimistic

' Si hay datos, posicionarlo en el primer registro:
'cmdMover_Click 0
End Sub

*********************************************************************************************

BUENO AHI ESTA ESPERO TE SIRVA XAO
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:Relacionar Access y VB con ADO

Publicado por RYURIK (2 intervenciones) el 21/03/2007 18:44:22
Casi lo olvido despues q tengas el codigo listo antes de ejecutar ve al menu proyecto de ahi accesa a referencias y selecciona Microsoft Active x Data Object 2.7 Library o el 2.8 cualquiera de esos te sirve cuando los selecciones dale a aceptar y listo ahora corre tu programa. Recuerda q debes hacerlo cada vez q abres el Visual Basic o si no el programa te dara error.

Saludos y suerte
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
sin imagen de perfil

RE:Relacionar Access y VB con ADO

Publicado por antonio (2 intervenciones) el 12/04/2007 00:22:30
Estoy actualizando mi sistema creado en visual basic 6.0 de rdo,dao A ado
confio en tus consejos..
Gracia.
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:Relacionar Access y VB con ADO

Publicado por froilan fernandez  (1 intervención) el 23/09/2008 17:44:12
hola necesito hacer una consulta a mi base de datos
la consulta que hice no funciona no que es lo que pasa se conecta
y todo esta bien. Estoy tratando de hacer un sistema de control de acceso
pero estoy demarando por este inconveniete.

necesito ayuda y si puedes ayudame o mandame inforamcion
te lo agradecere.
chauuuuuuuuu
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