• Publicidad

Conexión con SQL Server desde Perl

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

Conexión con SQL Server desde Perl

Notapor seafree » 2019-03-20 16:29 @729

¿Qué tal, explorer?

Verificando en el sitio encontré información referente a "Conectar Perl con SQL Server" respondida por tu autoría con fecha 2009-03-25 17:27 @769, y siguiendo las instrucciones de cómo conectar con MS SQL Server desde Unix.

Instale perl(DBD::ODBC)

#yum install 'perl(DBD::ODBC)'
Installed:
perl-DBD-ODBC.x86_64 0:1.50-3.el7
Complete!

#yum info perl-DBD-ODBC
Installed Packages
Name: perl-DBD-ODBC
Arch: x86_64
Version: 1.50

Listo los módulos instalados Perl:
#perldoc perllocal ----> NO MUESTRA perl-DBD-ODBC

Ejecuto #yum list | grep DBD::ODBC
#No muestra nada

Te agradeceré tu valioso apoyo para validar que sí está instalado.

Enormes gracias.
seafree
Perlero nuevo
Perlero nuevo
 
Mensajes: 296
Registrado: 2012-08-10 11:26 @518

Publicidad

Re: Conexión con SQL Server desde Perl

Notapor explorer » 2019-03-20 18:09 @798

Para saber si un módulo está instalado se puede ejecutar un miniprograma Perl que haga uso de él:

perl -c -e 'use DBD::ODBC;'

Si no salen errores... es que sí está instalado.

El grep que estás haciendo a "yum list" no es correcto. Fíjate que el módulo que ha instalado está en el paquete "perl-DBD-ODBC.x86_64 0:1.50-3.el7"
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: Conexión con SQL Server desde Perl

Notapor seafree » 2019-03-21 09:58 @457

seafree: Can't locate DBD/ODBC.pm in @INC (you may need to install the DBD::ODBC module) (@INC contains: /usr/local/lib/perl5/site_perl/5.26.1/x86_64-linux /usr/local/lib/perl5/site_perl/5.26.1 /usr/local/lib/perl5/5.26.1/x86_64-linux /usr/local/lib/perl5/5.26.1) at -e line 1.
BEGIN failed--compilation aborted at -e line 1.


El grep que estás haciendo a "yum list" no es correcto.

seafree: Para listar los paquetes instalados instale el administrador de paquetes de YUM dnf, así al ejecutar # dnf list installed

Entre los que muestra esta: perl-DBD-ODBC.x86_64 1.50-3.el7

Con esto confirmo la instalación del ODBC, ¿es así, explorer?
seafree
Perlero nuevo
Perlero nuevo
 
Mensajes: 296
Registrado: 2012-08-10 11:26 @518

Re: Conexión con SQL Server desde Perl

Notapor explorer » 2019-03-21 11:59 @540

Si sale el primer mensaje de error, es que el módulo no está instalado.
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: Conexión con SQL Server desde Perl

Notapor seafree » 2019-11-25 14:55 @663

explorer escribiste:Si sale el primer mensaje de error, es que el módulo no está instalado.


¿Qué tal, explorer? Por cuestiones de salud permanecí una larga temporada fuera, pero me encuentro de regreso y mis problemas con la conexión por medio del DBD-ODBC-1.60 continúan. De hecho de acuerdo a las instrucciones de instalación ejecuté:

- cpanm DBD::ODBC
sin resultados

- perl -MCPAN -e shell
install DBD::ODBC
sin resultados

Cuando finaliza el intento de instalación hace referencia al ODBC 'DRIVER MANAGER'.

También pide:
Crear la variable de ambiente ODBCHOME
.
.

Te agradeceré tu valioso apoyo para terminar satisfactoriamente y así continuar utilizando la potencialidad de Perl en Linux para acceder a bases de datos de SQLSERVER en Windows.

El sitio utilizado para la descarga fue el metacpan.

Enormes gracias.
seafree
Perlero nuevo
Perlero nuevo
 
Mensajes: 296
Registrado: 2012-08-10 11:26 @518

Re: Conexión con SQL Server desde Perl

Notapor explorer » 2019-11-25 21:56 @955

Pero, ¿no decías en un mensaje anterior que lo habías localizado para instalarlo con el yum?

Siempre es mejor instalarlo ya compilado antes que intentarlo uno mismo.

En cuanto a las instalaciones con cpanm, comprueba antes si tu versión de Perl y sistema operativo son compatibles con la versión de DBD::ODBC que quieres instalar.

A ver... si DBD-ODBC aparece en la lista de yum, olvídate de bajarlo e instalarlo con cpanm. Simplemente pídele a yum que lo instale.

Después de ejecutar el comando de instalación, mira los errores y advertencias que yum ha mostrado en pantalla por si había errores.

Si no hay errores, ejecuta perl -MDBD::ODBC -E 1 para ver si el perl del sistema lo encuentra.

Si no lo encuentra, primero averigua dónde lo ha instalado yum. Luego, con perl -V te sale la lista de directorios donde perl va a buscar módulos.

Lo "normal" es que yum instale sus paquetes en un directorio "conocido" del sistema, y que ese directorio sea "conocido" por perl.

Pero si no es así, vale con saber en qué directorio está para agregar un use lib "directorio"; al principio del programa Perl para que perl lo pueda encontrar.

Por favor, dinos en qué fase de todo esto estás ahora.
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: Conexión con SQL Server desde Perl

Notapor seafree » 2019-11-27 12:33 @564

¿Qué tal, explorer? Disculpa que tarde en escribir, sucede que Perl no encuentra el módulo DBI. Al parecer se instaló en un directorio diferente. Estoy buscando la ruta correcta para utilizar 'use lib', pero no la encuentro.

¿Conocerás cómo puedo encontrar la ruta correcta para utilizarlo en 'use lib'?

Enormes gracias.
seafree
Perlero nuevo
Perlero nuevo
 
Mensajes: 296
Registrado: 2012-08-10 11:26 @518

Re: Conexión con SQL Server desde Perl

Notapor explorer » 2019-11-27 15:39 @693

Si DBI no está instalado en el sistema, muy mal asunto...

Es posible que sea un Linux de esos raros que no le guste Perl o que estén a punto de quitarlo...

Creo que dijiste que era un CentOS. El DBI debería poder instalarse sin problemas en alguno de los directorios típicos de Perl:
/usr/lib/perl/
/usr/local/lib/perl/
/usr/local/share/perl/
/usr/local/vendor/perl/
/usr/local/lib/site_perl/

y muchos más.

Usando el comando find será muy fácil encontrarle:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
# find /usr -name 'DBI.pm'
/usr/share/perl5/Log/Log4perl/Appender/DBI.pm
/usr/lib/perl5/Bundle/DBI.pm
/usr/lib/perl5/DBI.pm
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

Ahí ves que en mi sistema está instalado en /usr/lib/perl5/

Ahora solo hay que ver si el Perl del sistema es capaz de encontrarlo:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
# perl -V |fgrep " /usr/lib/perl"
    /usr/lib/perl5
    /usr/lib/perl/5.18
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

Y así es.

Y si no, pues uso use lib con el directorio donde está instalado.
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: Conexión con SQL Server desde Perl

Notapor seafree » 2019-11-27 16:47 @741

Gracias, explorer. Solucionado: antes de ausentarme modifiqué el .bashrc para enlazarme con una base de datos de easysoft y, caso fallido. Eliminé la instrucción correspondiente y asunto solucionado. Continuamos con la conexión al SQL Sever.

Gracias.
seafree
Perlero nuevo
Perlero nuevo
 
Mensajes: 296
Registrado: 2012-08-10 11:26 @518

Re: Conexión con SQL Server desde Perl

Notapor seafree » 2019-11-28 12:40 @569

Que tal Exporer ya cuento con el ODBC instalado:

# perl -MDBD::ODBC -e 'print $DBD::ODBC::VERSION;'
1.50

Me podrás proporcionar por favor una guía para realizar un script de conexión desde perl v5.16.3 a SQL Server Management Studio v18.3.1.

Saludos y gracias.
seafree
Perlero nuevo
Perlero nuevo
 
Mensajes: 296
Registrado: 2012-08-10 11:26 @518

Siguiente

Volver a Intermedio

¿Quién está conectado?

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