[Python-es] [python-es] | conectar python con vfp

decastro decastro en netvision.com.py
Lun Oct 1 18:43:40 CEST 2012


Hola a todos.
Esto va a ser un poquito largo, pero creo que hace falta que se haga una 
explicación más específica, aunque superficial. He trabajado con Visual 
FoxPro (VFP) por muchos años y hasta hoy le doy manutención a algunos 
sistemas que he hecho con ese lenguaje en su versión 9.0.

En verdad, VFP maneja el tema de las tablas en dos formas básicas:

 1. Tablas libres (prácticamente igual a los otros sistemas xBase).
    Estas casi ya no son utilizadas por los desarrolladores que usan VFP.
 2. Tablas que pertenecen a una "base de datos".

Las extensiones utilizadas por los archivos que manejan datos son:

    *.dbf - como en todos los lenguajes xBase, son los archivos de datos
    propiamente dichos.

    *.fpt - son los archivos de campos "memo". Llevan el mismo nombre de
    la tabla principal y están "conectados" a la tabla de datos por
    medio de su cabecera.

    *.cdx - son los archivos de índices compuestos (que pueden manejar
    más de un ordenamiento para la misma tabla por medio de etiquetas) y
    también llevan el mismo nombre del DBF, además de también estar
    "conectados" a la tabla de datos por medio de su cabecera.

    *.idx - son los archivos de índices independientes (que solo
    soportan un tipo de ordenamiento y tienen que ser abiertos
    manualmente), actualmente prácticamente no son utilizados.

Cuando digo "conectados por medio de la cabecera" quiero decir que no se 
puede abrir dichos archivos independientemente y que la tabla a la que 
pertenecen no podría ser abierta correctamente, si los mismos no están 
presentes.

Cuando se crea una "Base de datos" de Visual FoxPro, se generan 3 
archivos a modo de repositorio que tienen las siguientes extensiones:

    *.dbc - es el archivo de datos que reúne las definiciones de todas
    las tablas, campos, vistas, etc.  que pertenecen a la base de datos.
    *.dct - son los archivos de campos "memo" de la base de datos.
    *.cdx - son los archivos de índices de la base de datos.

En realidad NO ES una base de datos como las normalmente conocidas, 
sigue usando las tablas DBF y todo lo demás, por lo que carece de una 
mayor seguridad específica.
Sin embargo, las tablas que son marcadas como pertenecientes a una base 
de datos pueden ser manejadas como las tablas de cualquier otra base de 
datos. Es decir:
- Sus campos pueden tener nombres largos (hasta 255 caracteres) en 
tablas libres su límite es 10 caracteres.
- Se pueden agregar descripciones de campos a modo de diccionario de datos.
- Se pueden crear Reglas de Integridad, Claves primarias, Campos 
autoincrementables, etc., etc., etc.

Por otro lado, dichas tablas también quedan "conectadas por su cabecera" 
al archivo repositorio de la base de datos.

Tengo entendido que existen drivers ODBC y OLE DB que permiten el acceso 
a esas "Bases de Datos" desde otros lenguajes. Infelizmente no tengo a 
mano ningún link que te pueda ayudar, pero creo que si buscas en San 
Google los encontrarás.

Espero haber aclarado algo. Cualquier otra duda, es solo preguntar.

Respecto a conectarse desde Python... Lo siento, yo estoy aun muy crudo 
en Python como para ayudarte con eso. Aun estoy en el "BeABa" del 
lenguaje, pero estoy estudiando de a poquito para llegar a conocerlo un 
poco más... =)

Saludos aclaratorios.
Ricardo De Castro Aquino
Asunción - Paraguay


El 01/10/2012 03:07, Carlos Latorre escribió:
> Por si no estas familiarizado con las bbdd dBase:
> Los datos están distribuidos en ficheros de la siguiente forma:
>   - *.dbf - los ficheros de datos (los importantes)
>   - *.dbt - contenido de los campos "memo" (estos ficheros, de 
> extensión dbt y el mismo nombre que el pdf son muy importantes, pues 
> sin ellos no se abre correctamente el .pdf, guardan el contenido de 
> los campos "memo", equivalente al text de sql)
>   - *.ndx ó *.ntx - ficheros de indice (se pueden reconstruir a partir 
> de los datos) - tienen una importancia relativa, pues deben abrirse y 
> utilizarse de forma explicita, por lo que, si no conoces la aplicación 
> de antemano, tal vez sea mejor que crees y utilices los que vayas 
> necesitando.
> Además puede haber mas ficheros, propios de foxpro, conteniendo 
> formularios, vistas, etc, ... pero estos son muy dependientes.
>
> Saludos,
> Carlos L.
>
> El 1 de octubre de 2012 08:54, Carlos Latorre 
> <clatorrega.dph en gmail.com <mailto:clatorrega.dph en gmail.com>> escribió:
>
>     Fox Pro utiliza bases las antiguas bases de datos dBase
>     (http://es.wikipedia.org/wiki/DBase), actualmente conocidas como
>     xBase (http://es.wikipedia.org/wiki/XBase).
>     Yo trabaje con ellas mucho en el pasado, utilizando Clipper, pero
>     de eso hace ya casi 20 años.
>     Tras una mirada rápida por S. Google aparecen un par de librerías
>     en el sourceforge:
>       - dbfpy (http://dbfpy.sourceforge.net/ )
>       - xbase-py (http://sourceforge.net/projects/xbase-py/)
>
>     Espero que te sea de ayuda para comenzar,
>     Saludos:
>     Carlos
>
>     El 1 de octubre de 2012 06:51, aj gutierrez <neoajg en gmail.com
>     <mailto:neoajg en gmail.com>> escribió:
>
>         Buenas noches a todos,
>
>         Saben si existe o se puede conectar python a una base de datos
>         en visual fox pro?
>
>
>
>
>
>         _______________________________________________
>         Python-es mailing list
>         Python-es en python.org <mailto:Python-es en python.org>
>         http://mail.python.org/mailman/listinfo/python-es
>         FAQ: http://python-es-faq.wikidot.com/
>
>
>
>
>     -- 
>         \|/
>         (QQ)
>         ( O )
>     ==oo=======oo============================================================
>      Carlos Latorre Galicia mail:clatorreg en dphuesca.es
>     <mailto:mail%3Aclatorreg en dphuesca.es>
>       Tecnico de Sistemas              Telefono: +34 974 294 110
>     <tel:%2B34%20974%20294%20110>
>
>      Diputacion Provincial de Huesca http://www.dphuesca.es/
>       Porches de Galicia, 4              Telefono: +34 974 294 100
>     <tel:%2B34%20974%20294%20100>
>       22002 Huesca                    Fax: +34 974 294 149
>     <tel:%2B34%20974%20294%20149>
>     =========================================================================
>
>
>
>
> -- 
> \|/
> (QQ)
>     ( O )
> ==oo=======oo============================================================
>  Carlos Latorre Galicia mail:clatorreg en dphuesca.es 
> <mailto:mail%3Aclatorreg en dphuesca.es>
> Tecnico de Sistemas                          Telefono: +34 974 294 110 
> <tel:%2B34%20974%20294%20110>
>
>  Diputacion Provincial de Huesca http://www.dphuesca.es/
> Porches de Galicia, 4                        Telefono: +34 974 294 100 
> <tel:%2B34%20974%20294%20100>
> 22002 Huesca                                      Fax: +34 974 294 149 
> <tel:%2B34%20974%20294%20149>
> =========================================================================
>
>
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
>
> __________ Información de ESET NOD32 Antivirus, versión de la base de datos de firmas de virus 7534 (20121001) __________
>
> El mensaje fue verificado por ESET NOD32 Antivirus.
>
> http://www.eset-la.com
>

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20121001/52f9171c/attachment.html>


Más información sobre la lista de distribución Python-es