martes, 20 de mayo de 2008

dbf to mysql

sudo apt-get install dbf2mysql
dbf2mysql -h localhost -U root -P mipassword -d mibasedadosmysql -t mitabla -c -f /home/avbravo/Documentos/mitabla.DBF
http://www.starlinux.net/staticpages/index.php?page=20020921010536879



-v muestra detalles de la conversión
-vv muestra más detalles
-vvv incluye informe de progreso
-f traduce los nombres de campo a minúsculas
-u traduce los textos de campos alfanuméricos a mayúsculas
-l traduce los textos de campos alfanuméricos a minúsculas
-n no se agrega 'NOT NULL' en las sentencias de creación de tabla
-o exporta solo los campos listados
-e archivo para conversión de caracteres
-s substituye permite cambiar nombres de campos.
Ej. -s NOMBRE=AYN,DIR=DIRECCION
-i lista de campos a indexar (atte: genera UN indice por campo)
-d base de datos donde se insertaran los datos
-t tabla donde se insertarán los datos
-c crea la tabla si no existe
-cc crea la tabla, pero no inserta registros
-p indica la clave primaria
-h indica server donde conectarse
-F los campos de caracteres se formatean como de longitud fija
-q modo rápido inserta los registros a través de un archivo temporal usando la sentencia LOAD DATA INFILE
-r quita espacios antes y después de datos alfanuméricos


Suponiendo que quiero hacer una conversión directa, solo necesito crear la base de datos en blanco, por ejemplo desde la consola mysql:

create database libros;
quit


Y luego ejecutar dbf2mysql para crear las tablas e insertar los datos:

dbf2mysql -h localhost -d libros -t autores -c -f -p idautor /mnt/c/data/autores.dbf
dbf2mysql -h localhost -d libros -t libros -c -f -p idlibro /mnt/c/data/libros.dbf
dbf2mysql -h localhost -d libros -t temas -c -f -p idtema /mnt/c/data/temas.dbf
dbf2mysql -h localhost -d libros -t autorlib -c -f -p idautorlib /mnt/c/data/autorlib.dbf


La principal desventaja de este método es que no se crean algunos atributos deseables, como es el caso de los campos autoincrementables. En este caso, lo más recomendable es crear nuestra propia estructura, otra vez volvemos al método de crear la estructura con un editor ASCII y generar la base de datos vacía con la consola MySQL como se explico aquí. Luego se insertan los datos con este conjunto modificado de comandos dbf2mysql:

dbf2mysql -h localhost -d libros -t autores -f /mnt/c/temp/autores.dbf
dbf2mysql -h localhost -d libros -t libros -f /mnt/c/temp/libros.dbf
dbf2mysql -h localhost -d libros -t temas -f /mnt/c/temp/temas.dbf
dbf2mysql -h localhost -d libros -t autorlib -f /mnt/c/temp/autorlib.dbf



http://www.fiby.at/dbfpy/

http://www.marcelor.com/2008/02/importacion-de-datos-desde-tablas-dbase-dbf-a-mysql-con-python.html

http://sourceforge.net/projects/mysql-python

http://www.webexperto.com/downloads/programa.php?cod=81

http://www.google.com/search?q=dbf+2+mysql+&btnG=Buscar&hl=es&lr=

No hay comentarios: