• Publicidad

Transformación de Access a txt

Aquí encontrarás todo lo que sea específicamente acerca de módulos de Perl. Ya sea que estás compartiendo tu módulo, un manual o simplemente tienes una duda acerca de alguno.

Transformación de Access a txt

Notapor keparodo » 2012-01-03 20:38 @901

¿Existe algún módulo Perl que pueda leer Access (mdb) y transformar cada base a un archivo txt?

Se agradece.
keparodo
Perlero nuevo
Perlero nuevo
 
Mensajes: 21
Registrado: 2011-12-14 17:17 @762

Publicidad

Re: Transformación de Access a txt

Notapor explorer » 2012-01-04 11:27 @519

No lo hay porque el formato de fichero es propiedad de Micro$oft, aparte de que lo han ido cambiando con los años.

Una forma de acceder a su contenido, es por medio de un interfaz ODBC, por ejemplo, DBD::ODBC. Solo tienes que definir, en el Panel de Control de Windows, una fuente ODBC a partir de ese fichero (se supone que las bibliotecas DLL para leer .mdb están instaladas). Luego, solo queda hacer el programa correspondiente, con este módulo. Mejor dicho: el que realmente usaremos será DBI, pero al indicar en el programa un DSN a una fuente ODBC, DBI cargará DBD::ODBC. Esto, para Windows. Si estás en UNIX/Linux, usarás controladores externos, como unixODBC o iODBC.

Cualquiera de estas soluciones NO abre el fichero mdb de forma directa, sino lo que hace es dialogar con ODBC que a su vez dialogará con el motor Access, y éste sí que accederá al fichero.

En el documento DBD::ODBC::FAQ tienes muchas cuestiones resueltas. Por ejemplo, How do I access a MS-Access database from Linux?.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Transformación de Access a txt

Notapor keparodo » 2012-01-04 14:39 @652

Muchas gracias. Necesitaba confirmar el modo de lectura.
keparodo
Perlero nuevo
Perlero nuevo
 
Mensajes: 21
Registrado: 2011-12-14 17:17 @762

Re: Transformación de Access a txt

Notapor keparodo » 2012-01-18 16:36 @733

Estimados, para leer Access con Perl, es necesario instalar un controlador ODBC-Access Driver V1.0. Se requiere licencia, pero para probar, dan una versión de prueba (lo pueden bajar desde easysoft.com). Una vez realizada la instalación del controlador, la aplicación queda:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. my $CONNECT = "DRIVER={Easysoft ODBC-ACCESS};mdbfile=".$nom_file_mdb.";readonly=yes;exclusive=no;ignore_rel=no";
  2. $dbh = DBI->connect("dbi:ODBC:$CONNECT", "", "") or print "ERROR -- $DBI::errstr";
  3. $sql= "select columna from tabla where condiciones";
  4. $sth = $dbh->prepare($sql) or die print "ERROR -- consulta SQL ODBC-ACCESS";
  5. $sth->execute || print "ERROR -- execute SQL ODBC-ACCESS");
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
keparodo
Perlero nuevo
Perlero nuevo
 
Mensajes: 21
Registrado: 2011-12-14 17:17 @762

Re: Transformación de Access a txt

Notapor explorer » 2012-01-19 11:07 @504

Bueno, sí, también es esa una de las maneras posibles, comprando una licencia de un controlador propietario.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Módulos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados

cron