** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Otros de Microsoft: Windows y Office > Visual Basic Clásico (VB3...VB6)
  Mensajes nuevos Mensajes nuevos RSS - comparar datos en access 2007
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradocomparar datos en access 2007

 Responder Responder
Autor
Mensaje
Thiago1981 Ver desplegable
Nuevo
Nuevo
Avatar

Unido: 12/Mayo/2011
Localización: Ecuador
Estado: Sin conexión
Puntos: 0
Enlace directo a este mensaje Tema: comparar datos en access 2007
    Enviado: 12/Mayo/2011 a las 16:59
hola a todos necesito comparar un dato que ingreso en un Text en VB6.0 y que este lo compare con una base de access, si el dato no existe lo guarde en caso de que el dato exista solo de un mensaje.
 
Les agradezco desde ya por su ayuda
Saludos
Thiago
Arriba
Yamamoto Ver desplegable
Colaborador Especial
Colaborador Especial


Unido: 18/Septiembre/2010
Localización: Hirosima
Estado: Sin conexión
Puntos: 3362
Enlace directo a este mensaje Enviado: 12/Mayo/2011 a las 17:22
Hola:
¿Estás trabajando en un programa hecho en Visual Basic clásico contra una BD de Access 2007?
Lo digo, por que al menos a mi no me queda claro...y es que si es en VBA de Access es sencillo (DLookup) y si no lo es, se complica un poco más...


Vamos a suponer que realmente estás en VB6 clásico (Al menos así lo afirmas en tu pregunta) y que deseas intereactuar con una BD de Access 2007 en formato accdb

Y que quieres interactuar con ADO.

Lo primero es saber qué cadena de conexión (Provider) utilizar, ya que de A2003 a A2007 la cosa cambió:
Access2003, sintaxis del Provider:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mibaseAccess2003.mdb;User Id=admin;Password=;

Access 2007, sintaxis del Provider:
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Una Carpeta\Access2007file.accdb;Persist Security Info=False;

Como ves, la cosa ha cambiado.

¿Que puede pasar?
Que en la maquina donde corras tu ejecutable de Visual Basic no se encuentren los controladores ODBC y OLEDB de access 2007.
En este caso, deberás pasarte por este enlace de Microsoft y descargar los componentes e instalarles:

http://www.microsoft.com/downloads/es-es/details.aspx?displaylang=es&FamilyID=7554f536-8c28-4598-9b72-ef94e038c891


Una vez tengas todo esto en orden, ya es facil...te pongo un mini ejemplo, el resto lo dejo para ti:

Private Sub ManipulaBaseAccess2007()
 'Variables
 Dim Cnt As New ADODB.Connection
 Dim Rst As New ADODB.Recordset
 Dim SQL As String
   'Lo primero abrimos una conexión a la base Access 2007
   'situada donde sea. En este caso en el mismo Path de esta aplicación VB
   Cnt.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & App.Path & _
      "\base.accdb" & ";"
 'Vamos a rellenar un Recordset con esta SQL:
  SQL = "SELECT * FROM Tu_Tabla WHERE Lo que sea"
 'Abrimos el recorset
 Rst.Open SQL, Cnt
'manipulas lo que quieras del recordset
' etc
' etc
' Cierras el recordset
Rst.Close
' cierras la conexión
Cnt.Close
End Sub



Si fuera para A2010, los componentes de acceso a datos Access, se encuentran aqui:
http://www.microsoft.com/downloads/es-es/details.aspx?FamilyID=C06B8369-60DD-4B64-A44B-84B371EDE16D

Por cierto, si esta pregunta es realmente de VB6, debería estar en otro foro diferente al de Access. Ya comentas algo...
**Saludos**挨拶および平和
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable