[Ayuda] ODBC para CVS
Iván Caballero Cano
ivanc en grupocti.com.mx
Lun Oct 31 12:21:07 CST 2005
Gracias Gunnar tratare de sacar algo de provecho de tu script..
Necesito estudiarlo.. No le entiendo ni madres.. pero entiendo algo de
las sentencias SQL que pusiste en ellos..
Tendre que investigar como meter en tabla registro de otra tabla pero
que sean de otro campo...
Thanks
Gunnar Wolf wrote:
>Iván Caballero Cano dijo [Mon, Oct 31, 2005 at 11:31:03AM -0600]:
>
>
>>Lo que pasa es que los cambios que debo hacer en mis tablas de MYSQL
>>salen en el diario oficial de la federacion
>>y vienen en tablas de documentos de word, esas tablas las proceso de
>>manera que las convierto en un archivo de texto tipo CSV
>>con cada campo separado por comas o punto y coma o lo que sea... no hay
>>forma que yo conosca de pasar directamente esos archivos
>>o tablas a alguna base de datos que use como dbase o mysql, es por eso
>>que de todos modos tengo que convertir eso a Archivos de texto.
>>Y luego ya estando en texto ordenado las puedo convertir en algun
>>formato de BD para interactuar con ellas.. pero eso me toma un poco mas
>>de tiempo.
>>
>>
>
>Haber comenzado por ahí ;-)
>
>Digamos que tienes un depósito de .csv en /tmp/tablas, con los datos
>que recibes del DOF, y una base de datos PostgreSQL llamada
>'datos'. Claro está, este código no tiene nada de garantía (ni
>siquiera lo he corrido una vez, lo escupí directo del cerebro al
>correo)... Pero te muestra lo básico. Cada que recibes tus datos del
>Diario Oficial, los subes a la BD de verdad (sugiero PostgreSQL, ahora
>que si por alguna perversión prefieres MySQL sólo tienes que cambiar
>el Pg por mysql).
>
>----------------------------------------------------------------------
>#!/usr/bin/perl
>use strict;
>use warnings;
>use DBI;
>
>my ($dbh_csv, $dbh_pg, $sth_trae, $sth_mete);
>
>$dbh_csv = DBI->connect('dbi:csv:f_dir=/tmp/tablas')
> or die 'No pude abrir los datos en CSV';
>$dbh_pg = DBI->connect('dbi:Pg:dbname=datos','user','p4sswd')
> or die 'No pude abrir la conexión a Postgres';
>
>$sth_trae = $dbh_csv->prepare('SELECT campo1, campo2, campo3, campon
> FROM tabla');
>$sth_mete = $dbh_pg->prepare('INSERT INTO tabla (campo1, campo2,
> campo3, campon) VALUES (?, ?, ?, ?)');
>
>$sth_trae->execute;
>while (my @data = $sth_trae->fetchrow_array) {
> $sth_mete->execute(@data);
>}
>----------------------------------------------------------------------
>
>Saludos,
>
>
>
_______________________________________________
Ayuda mailing list
Ayuda en linux.org.mx
Para salir de la lista: http://mail.linux.org.mx/cgi-bin/mailman/listinfo/ayuda/
Más información sobre la lista de distribución Ayuda