Programación General => Visual Basic 6.0 e inferiores => Bases de Datos => Mensaje iniciado por: korsakof en Sábado 21 de Febrero de 2009, 16:36
Título: Problema con conexion a Base de datos
Publicado por: korsakof en Sábado 21 de Febrero de 2009, 16:36
Hola buenas, soy principiante en esto de vb y bases de datos.
Tengo una base de datos en access 2003. TEngo un problema a la hora de conectar por DAO.
Pongo la linea
Set dbclinica = DBEngine.Workspaces(0).OpenDatabase("C:pruclinica.mdb")
y me da el siguiente error cuando carga el formulario
"No se reconoce el formato de la base de datos"
Cuando lo hago en otro pc si que se puede.
Gracias por vuestro tiempo.
Título: Re: Problema con conexion a Base de datos
Publicado por: m0skit0 en Domingo 22 de Febrero de 2009, 00:56
¿Seguro que no tienes la base de datos dañada?
Título: Re: Problema con conexion a Base de datos
Publicado por: korsakof en Domingo 22 de Febrero de 2009, 13:32
No se lo que pasa, pero es una base de datos de prueba con dos tablas muy sencilla, es de prueba. Yo la abro con access normal y corriente pero es esa linea que me da error. Para ver si fuese problema de esa base de datos, cree otra igual y lo probe de nuevo con el mismo error y ahi sigo.
Muchas gracias.
Título: Re: Problema con conexion a Base de datos
Publicado por: m0skit0 en Domingo 22 de Febrero de 2009, 13:40
Prueba a desinstalar y volver a instalar el MS Office. A lo mejor otra aplicación dañó la instalación.
Título: Re: Problema con conexion a Base de datos
Publicado por: korsakof en Domingo 22 de Febrero de 2009, 16:26
Volvi a instalar MS Office y no funciono.Puedes ser por VB 6? Algun componente que falte o que este mal instalado?
Título: Re: Problema con conexion a Base de datos
Publicado por: cpmario en Domingo 22 de Febrero de 2009, 18:17
Lo que tienes es un problema de versiones de VB6 y Access. Asegúrate de tener el último Service Pack (SP) del VB6 instalado. EL último SP es el 6. El VB6 (SP6) puede reconocer las base de datos del Access de Office 97 y 2000. El DAO versión 3.5 (97) y el DAO 3.6 (2000)
:comp:
Título: Re: Problema con conexion a Base de datos
Publicado por: korsakof en Domingo 22 de Febrero de 2009, 22:58
Instale el SP6 lo mismo. No hay que activar ningun control?.
Me dice no puedo encontrar el origen de datos. Me da el error 440. Stoy desesperao ya no se ni que hacer 2 horas y media y nada sigue igual.
Título: Re: Problema con conexion a Base de datos
Publicado por: cpmario en Lunes 23 de Febrero de 2009, 02:54
En el VB6, en menú Proyecto, revisa que en las referencias tengas seleccionado Microsoft DAO 3.6 object library. Si utilizas el control Data, asegúrate que en la propiedad Connect selecciones "Access 2000;" (sin las comillas). :comp:
Título: Re: Problema con conexion a Base de datos
Publicado por: korsakof en Lunes 23 de Febrero de 2009, 17:32
Premio, un error resuelto.
Solucion: Os descargais la DAO 3.6
La debeis pegar en esta ruta:
%systemdrive%Archivos de programaArchivos comunesMicrosoft SharedDAO
Ir a VB 6, Quitar la referencia a la 3.51 que en este caso es la que tenia yo y agregar la nueva.
Otro problema Tras la desesperacion y el chute me aprece otro mensaje. Este es el codigo. Lo que estoy haciendo es un login casero para mi programa. En la base de datos hay una tabla llamada USUARIOS. Ahora lo que me aparece es error Error 3370 Microsoft JET no reconoce yo como un nombre de campo o expresion validos Dim criterio As String Dim sw As Boolean Dim x As Integer Dim contador As Integer
Do Until contador = 3 sw = False criterio = "nomUSER =" & txtusuario.Text
registrousuarios.FindFirst criterio rem El error me lo da aqui.
If Not registrousuarios.NoMatch Then criterio = "passUSER =" & txtusuario.Text registrousuarios.FindFirst criterio If Not registrousuarios.NoMatch Then sw = True Else x = MsgBox("Contraseña no es correcto", vbOKOnly, "Clinica Login") End If
Else x = MsgBox("Usuario no es correcto", vbOKOnly, "Clinica Login")
End If If sw = True Then frmlogin.Show Else
contador = contador + 1
End If Loop Unload Me
Título: Re: Problema con conexion a Base de datos
Publicado por: cpmario en Lunes 23 de Febrero de 2009, 17:43
Debes de abrir otro hilo al hacer una pregunta nueva.
El error lo tienes en el criterio.
Código: Visual Basic
criterio = "nomUSER =" & txtusuario.Text
Debe ser:
Código: Visual Basic
criterio = "nomUSER ='" & txtusuario.Text & "'"
Cuando buscas una cadena de texto en la base de datos debes incluir comillas simples.
:comp:
Título: Re: Problema con conexion a Base de datos
Publicado por: korsakof en Lunes 23 de Febrero de 2009, 19:47