none
Database <-> DaoDatabase RRS feed

  • Pregunta

  • Tengo una aplicación que utiliza DAO.Necesito pasarla a ODBC.
     Antes de empezar me encuentro con un problema : No encuentro clases equivalentes a CDaoIndexInfo o CDaoFieldInfo.
     No existen?

    Gracias por todo
    lunes, 31 de agosto de 2009 19:39

Respuestas

Todas las respuestas

  • Me parece que sí existe la clase CFieldInfo en MFC/ODBC, pero no está documentada. Según, está definida en afxdb.h. Con respecto a la otra, no he podido encontrar algún equivalente.


    Si no existe un equivalente directo de DAO en ODbC, seguro es porque la arquitectura es un poquito diferente. Espero que el artículo anterior te sirva como punto de partida. 

    Saludos. 


    lunes, 31 de agosto de 2009 20:37
  • Gracias. Voy a seguir buscando.
    Tú conoces alguna forma de trabajar con DAO y ODBC sobre la misma Base.
    Realmente mi problema es que al cambiar a OFFice 2007 (bases .accmdb) , no encuentro la forma de abrirla con DAO
    lunes, 31 de agosto de 2009 20:46
  • Mmm... sí, he oído varios problemas similares. 

    Que yo sepa, no puedes mezclarlos. O sea, puedes abrir un CDatabase, ejecutar operaciones y cerrar; y por otra parte, puedes abrir un CDaoDatabase, hacer operaciones y cerrar. Pero abrir con CDatabase y luego que CDaoDatabase haga operaciones, o cosas por el estilo, dudo mucho que se pueda. 

    En general, yo utilizo ODBC, y en las últimas cosas que he hecho con Access 2007 me funciona bien. 

    Parece que hay una nueva versión, llamada ACE DAO. Quizás te pueda servir. Pero al parecer (y según el ejemplo que te paso) son objetos COM. 


    Saludos. 
    lunes, 31 de agosto de 2009 20:56
  • Muchas Gracias por tu ayuda; creo que el ej. al que me has mandado me puede ser util , aunque me dará bastante trabajo...

    He intentado , meter la sentencia #import en una librería, y desde esa librería mandar el puntero de una DAODatabase abierta a mi programa , y aunque en la librería está bien abierta la base, en mi programa al tratarla como CDAODatabase me da errore de ASSERT.Supongo que hay cosas que no entiendo en todo este lío, pero bueno, intentaré meter todas las operaciones de Database en esa librería , y .. a otra cosa!!
    Te reitero las gracias.

    Salu2
     
    martes, 1 de septiembre de 2009 21:53