Visual Basic y base de datos Access

salima -  
 jamal_ho -
Tengo una base de datos Access y no puedo acceder a ella desde Visual Basic; este último no me permite abrir mi base de datos de Access de Office 2000.

52 respuestas

  • 1
  • 2
  • 3
  1. antonyojunior Mensajes publicados 22 Estado Miembro 42
     
    ¿cómo establecer una conexión entre VB6.0 y una base de datos Access?
    44
    1. gaetan
       
      SÍ, me encantaría mucho, por favor.
      0
    2. maestro
       
      Quiero una base de datos Access 2003 que quiero conectar a un programa .exe estándar VB6
      0
  2. meryem01
     
    hola
    acabo de leer este foro pero aún no logro conectar mi base de datos Access con VB6. tengo una base de datos formada por 4 tablas y consultas. quiero, usando VB, mostrar algunos campos de la tabla, modificarlos, eliminarlos y agregar registros, insertar estadísticas ya calculadas por las consultas de Access...gracias por toda la ayuda y me gustaría que me envíen cursos que consideren interesantes
    gracias por todo
    15
  3. leonelrichie Mensajes publicados 1 Estado Miembro 7
     
    slt j'aimerai si possibles avoir des cours performants avec exemples sur les bases de données créées avec le vb6 et access
    7
  4. Vignon
     
    Hola,
    Estoy desarrollando una aplicación VB6 en la plataforma de Windows 2000 que es específica para una empresa y no logro conectarme a la base que creé en Access 2000. Me dice que no reconoce el formato de la base. He probado con otros códigos, pero nada. ¿Puedes ayudarme?
    Aquí tengo el mensaje «La conexión n'a pas réussi,réessayez»
    Te envío el código que he utilizado:

    Option Explicit
    'Declaración de variables globales
    'Global DbName As String
    Global Liberreur As String
    'Global OK As Integer

    Public Cnx As New ADODB.Connection
    Public Rst As New ADODB.Recordset
    Public Cmd As New ADODB.Command
    Sub main()
    'Este procedimiento llama a la función de apertura de la BD y muestra la ventana de inicio.
    If OuvrirBase = True Then
    frmConnexion.Show
    Else
    MsgBox ("La connexion n'a pas réussi,réessayez")
    End If
    End Sub

    Public Function OuvrirBase() As Boolean
    'Esta función abre la BD Access 2000
    On Error GoTo Erreur

    Cnx.Provider = "Microsoft.Jet.Oledb.4.0"
    Cnx.ConnectionString = App.Path & "c:\db1.mdb"
    Cnx.Open
    Cmd.ActiveConnection = Cnx
    OuvrirBase = True
    Exit Function
    '\gbemich\GESPARC\Application\
    Erreur:
    Liberreur = "Erreur d'ouverture de la Base"
    OuvrirBase = False
    End Function

    Public Sub OuvrirRecord(StrSQL As String)
    'Esta rutina permite abrir todas las tablas de la BD. Este código para abrir una tabla es una consulta SQL que hay que pasarle, es decir, un ''select''
    'Mira en la ayuda a nivel de estas propiedades . verás para qué sirven

    Cmd.ActiveConnection = Cnx
    Cmd.CommandText = StrSQL
    Rst.CursorLocation = adUseClient
    Rst.CursorType = adOpenDynamic
    Rst.LockType = adLockPessimistic
    Rst.Open Cmd
    End Sub

    Public Sub FermerRecord()
    'Esta rutina permite cerrar todas las tablas de la BD
    On Error Resume Next
    Rst.Close
    Set Rst = Nothing
    Set Rst = New ADODB.Recordset
    End Sub

    Public Sub FermerBase()
    'Esta rutina permite cerrar la BD
    On Error Resume Next
    Cnx.Close
    Set Cnx = Nothing
    End Sub
    4
    1. KAFILONGO
       
      También puedes convertir la base de datos a la versión inferior, es decir, a la versión 97. Y todo irá mejor.
      0
    2. Furankuku
       
      Hola Vignon, no sé si has encontrado la solución, pero creo que la ruta de la BD no es la correcta.
      intenta más bien:

      Cnx.ConnectionString = App.Path & "\\db1.mdb"

      porque App.Path seguramente debe designar la ruta de db1.mdb

      y "\\" es un carácter especial

      Por último, a ver.
      0
    3. Dhellatres
       
      Si no puedes conectarte a la base de datos es porque la has convertido a la versión 2000

      tienes que convertir la base de datos a la versión 97
      y ahí funcionará.

      C todo
      0
    4. MIMO
       
      USTED DEBE CONVERTIR SU BASE DE DATOS A EL FORMATO 97
      EN ACCESS
      PASOS:
      HAGA CLIC EN EL MENÚ HERRAMIENTAS
      UTILIDADES DE BASES DE DATOS
      CONVERTIR LA BASE DE DATOS AL FORMATO 97
      usted da un nombre al archivo
      en este caso tendrá 2 bases de datos
      * formato 2000
      * formato 97

      en vb:
      propiedades DE DATA

      DATABASENAME : conéctate a la base de datos en formato 97 porque el control DATA no reconoce el formato 2000
      0
  5. isgt Mensajes publicados 46 Estado Miembro 3
     
    Hola a todos
    ¿cómo puedo mostrar una imagen en toda la form en VB
    porque cuando la hago no se muestra en la form, una parte queda?
    3
  6. ANDO
     
    Contáctame en ghost_dog_jr@hotmail.com y te daré un tutorial y consejos si quieres, porque es un poco largo de explicar...
    2
    1. salima
       
      hola ando, es muy amable de tu parte haberme respondido
      0
    2. dithy
       
      Bonjour ! Je peux t’aider à démarrer avec ta base Access et le VB. Pour commencer, donne-moi quelques détails rapides: - quelle version d’Access tu utilises - quel est ton objectif (par ex. afficher des données, ajouter des enregistrements, filtrer) - un aperçu des tables principales et des relations éventuelles - un extrait de ce que tu as essayé (code VB ou expressions SQL) En attendant, voici quelques bases utiles: - Pour afficher des données dans un formulaire, utilise le mode Formulaire et lie-le à une Source de données (Table/ requête). - Le VB simple pour ouvrir une connexion et lire des données peut démarrer ainsi (dans un module): Dim rs As DAO.Recordset Dim db As DAO.Database Set db = CurrentDb Set rs = db.OpenRecordset("NomDeLaTable", dbOpenDynaset) If Not rs.EOF Then MsgBox rs!NomChamp End If rs.Close Set rs = Nothing Set db = Nothing - Pour ajouter un enregistrement via VBA: CurrentDb.Execute "INSERT INTO NomTable (Champ1, Champ2) VALUES ('Valeur1', 'Valeur2')" - Assure-toi d’activer la référence à la bibliothèque DAO: Outils -> Références dans l’éditeur VBA, coche "Microsoft DAO 3.6/Type Library" selon ta version. Si tu me donnes des morceaux concrets de ton schéma (noms des tables et champs) et le code VB que tu as tenté, je te proposerai des corrections précises et des étapes pas à pas.
      0
    3. sawssana
       
      Hola, Salima Lakhal, tengo un problema para entender Access y me gustaría que me ayudaras yo (para ayudarme por favor) ok, mi MSN safae_roubi@hotmail.fr contáctame a este correo quiero que me ayudes por favor amigos ayúdenme
      0
    4. nyinawumuntu olive
       
      Hola, soy Olive. Tengo un problema para entender cómo crear Visual Basic y una base de datos, y por qué Access 2007 es muy complicado. ¿Podrías darme la solución, por favor?
      0
    5. un rageux
       
      pobre inútil, no puedes escribir en un post para responder a la comunidad. Si no sabe, hay otros... así es como nos quedamos con problemas sin resolver.

      ¿demasiado largo para escribir? será más largo explicárselo a cada persona que te lo pida.
      0
  7. Abdou
     
    Ok Salima, ahora primero, cuando abras VB desde el menú Proyecto -> Referencia -> marca Microsoft DAO 2.5/3.51 compatibility library.

    Luego, en el editor de programación, escribe las siguientes líneas de código:

    dim cnx as adodb.connection
    dim cmd as adodb.command
    dim rs as adodb.recordset

    sous la procédure form_load() tapez:

    set cnx=new adodb.connection
    set cmd=new adodb.command
    set rs=new adodb.recordset

    cnx.Provider="Microsoft.jet.oledb.4.0"
    cnx.connectionstring="tu base de datos que debe estar en la carpeta del proyecto.mdb"
    rs.cursorlocation=adUseClient
    rs.cursortype=adopenDynamic
    rs.locktype=adlockPessimistic

    rs.open cmd

    Te deseo buena suerte y mucho ánimo

    Saludos
    2
    1. Alain
       
      Veo que dominas Access 2007, ¿me puedes dar la solución para convertir una base de datos Access 97 a Access 2003 sin problema? He probado todos los métodos posibles e inimaginables y... siempre pasa algo.
      0
  8. srigovich
     
    hola

    si el programa que conecta VB con Access, ¿podrías publicarlo en: srigovich@hotmail.com
    gracias de antemano
    2
  9. ti pimous
     
    Hola,

    Para evitar algunos fallos, necesitas convertir tu base de datos a ACCESS 97.

    Haz una prueba para ver.

    Nos vemos.
    1
  10. salima
     
    Primero quiero agradecerle por su respuesta, es muy amable de su parte, y esta solución la he probado ya y funciona, pero el Office instalado en las máquinas es la versión 2000, así que no puedo convertir cada vez, no es profesional, y no entiendo por qué Office 2000 es menos eficiente que la versión 97.
    1
    1. majid
       
      respuesta de majid para salima
      no es Office 2000 el que es menos eficiente que Office 97; es al revés. el problema es que el control Data de Visual Basic no conoce las bases de datos Access 2000, así que para resolver el problema hay que usar el control ADODC; el problema quedará resuelto.
      0
  11. moh
     
    trabajo normalmente con VB y Access, envíame tu código para ver

    *pones un control DATA
    *un DBGRID
    o no
    ejemplo

    declara de la siguiente manera
    SET MO(el nombre de la variable con la que vas a trabajar) as database="la ruta de acceso a tu base")
    SET moo as database.recordset="el nombre de la tabla"
    1
    1. MOUMEN RAHAL
       
      GRACIAS POR TODO. SOY PRINCIPIANTE EN VB Y HE CREADO UN PEQUEÑO PROYECTO SOBRE FUNCIONARIOS EN EL QUE HAY TODA LA INFORMACIÓN: NOMBRE, APELLIDOS, ETC... CON LA FOTO. PARA LA CARGA DE UN NUEVO REGISTRO HE ENCONTRADO EL PROBLEMA EN EL MOMENTO DE MOSTRARLA. POR ESO LES PIDO QUE ME AYUDEN A SABER CÓMO INSERTAR UNA IMAGEN USANDO UN BOTÓN, AGREGAR UNA IMAGEN. GRACIAS, UNA VEZ MÁS, MOUMEN RAHAL.
      0
  12. 123456
     
    quiero saber cómo puedo vincular VB 6.0 con la base de datos
    nes j
    1
  13. hackmed
     
    You need to create a Microsoft Access 97 database for VB6, my friend.
    1
  14. salima
     
    hola moh
    en Visual Basic he vinculado mi programa a la base de datos Access2000 a través del control Data, pero éste me señala un error de acceso a la base, es realmente sorprendente, sobre todo porque funciona muy bien con Access97, ya no entiendo nada, espero que puedas ayudarme, cuento contigo
    nos vemos pronto en la red
    0
    1. moh
       
      ¿Necesitas mostrar todo el contenido de la base de datos o solo trabajar con ello (hacer búsquedas)?
      me dio el mismo problema con Access 2000, creo que hay incompatibilidad con Access 2000
      pero voy a ver cómo hacerlo
      0
    2. mbarek
       
      Hola Salima La solución a tu problema es usar el modelo ADO para vincular la base de datos de Microsoft Access 2000 o posterior con Visual Basic, pero para vincular la base de datos Access 97 se utiliza el modelo DAO (Data)
      0
      1. zayed > mbarek
         
        hola
        he encontrado un problema similar al propuesto por Salima. pero el problema es elegir las referencias correctas para incorporar. querido amigo, ¿conoces las referencias que hay que añadir para poder utilizar el ADO?
        0
  15. Merzak
     
    lo siento pero hay que cambiar los datos, son incompatibles con Acce s2000
    y si quieres más explicaciones sobre el problema, contáctame por mi dirección de correo electrónico para obtener más detalles sobre tu problema, chao
    0
  16. ngo Mensajes publicados 1 Fecha de registro   Estado Miembro
     
    Hola a todos,
    me gustaría saber funciones básicas que me permitirían manipular una base de datos Access 2003 con Visual C.
    bueno, gracias a todos los que me ayuden^^
    hasta pronto.
    0
  17. samiha
     
    Necesitas convertir tu base a formato Access 97; para ello, en Access ve a Herramientas, Utilitarios de Base de Datos, y realiza la conversión. Luego, en VB, adjúntalo al proyecto. Buena suerte.
    0
    1. kamilio
       
      hola
      te doy cursos para saber cómo conectar la base de datos a mi código b6, mi msn:tel_kamal@hotmail.fr
      y gracias por tu ayuda espero tu respuesta
      kamal B
      0
  18. username
     
    you are looking for the ocx data object 3.6 instead of 3.5 that Office 2000 requires
    0
  19. mokhtar
     
    escucha no sé cómo decirte expón bien tu problema, yo siempre he trabajado con VB y las bases Access así que si quieres ayuda ilúmbrame tu problema
    0
  20. hanshans26
     
    hola salma
    para poder conectarte a una BD Access 2000 debes usar el ocx Microsoft DAO 3.6 :
    en el menú Proyecto haz clic en la pestaña Referencias e intenta localizarlo en la lista de casillas para marcar
    si no lo encuentras intenta buscarlo con la utilidad de búsqueda de Windows para conocer su ruta, luego regresa a la pestaña Referencias y haz clic en Examinar para volver a localizar tu ocx y añade-lo . buena suerte
    mi correo: hanshans26@hotmail.com
    por si quieres avisarme de algo porque solo me conecto muy rara vez
    0
    1. kozan
       
      Estoy que lo paso mal,
      Durante dos días no avanzo en mi proyecto: tengo un problema con las variables booleanas, cuando añado un miembro no hay problema, se guarda bien en la base de datos, pero para datos que ingresé yo mismo desde Access no logro que aparezcan en las opciones del botón, he probado con Todo Verdadero/Falso, sí/no, -1/0 false/true... ¡ayúdenme por favor!
      0
  • 1
  • 2
  • 3