• Publicidad

Conectar BD SYBASE 2

Todo acerca de las bases de datos que existen: SQL, MySQL, Oracle, Postgres, CSV, etc.

Conectar BD SYBASE 2

Notapor Kiloko » 2008-07-17 17:35 @774

Saludos perleros, tengo un problema con un programa y creo que el error anda por ahí. ¿Me podrían echar la mano?

Yo tengo mis 2 programas
conectarsb.pm
uno.pl

El primero es:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
package  conectarsb;
use strict;
use DBI;
# variables a editar
my $db_user = "usuario";
my $db_pass = "clave";
my $host_name = "la ip misterio";
my $db_name = "DB";
# vars
my $q_string = "DBI:sybase:host=$host_name;database=$db_name";
sub connect{
return (DBI->connect ($q_string, $db_user, $db_pass,
{PrintError => 0, RaiseError => 1}));
}
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4


Mi segundo programa:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/perl -w
use lib "/usr/lib";
use conectarsb;
use strict;
use DBI;
use DBD::Sybase;

my($dbh,$sth);
$dbh = ConectarDB->connect();

$sth = $dbh->prepare('SELECT tad.SerialNo, tn.LabelName, tan.AeName FROM tbl_AlarmData tad, tbl_AlarmName tan, tbl_Node tn WH
ERE tad.EqType = tan.EqType AND tad.AlarmType = tan.AeID ANDtn.NodeID = tad.NodeId; '
) or die("Couldn't prepare statement: "
. $dbh->errstr);
$sth->execute("perl") or die("Couldn't execute statement: " . $sth->errstr);
my $fecha = $sth->fetchrow_array();
$sth->finish;
 $dbh->disconnect;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4



Y me sale el error.

Código: Seleccionar todo
Can't locate loadable object for module DBI in @INC (@INC contains: /usr/lib /usr/perl5/5.00503/sun4-solaris /usr/perl5/5.00503 /usr/perl5/site_perl/5.005/sun4-solaris /usr/perl5/site_perl/5.005 .) at /usr/t2000/aortegam/bin/lib/DBI.pm line 263


¿Alguna idea de lo que esté pasando?

Por cierto, ¿alguien sabe cómo trabaja la inserción de base de datos en sybase para el tiempo? Porque por ejemplo en mi campo de tiempo aparece 114557611 y ese dato lo tengo que transformar en 2008-07-17 16:39:57 pero no tengo ni idea de cual sería la llave para hacer esto. ¿Alguien tiene una idea?

Saludos.
Última edición por Kiloko el 2008-10-22 14:27 @644, editado 1 vez en total
Nunca interrumpas a tu enemigo cuando está cometiendo un error
Napoleón Bonaparte
Avatar de Usuario
Kiloko
Perlero nuevo
Perlero nuevo
 
Mensajes: 243
Registrado: 2007-07-10 18:26 @810
Ubicación: MOnterrey NL

Publicidad

Notapor explorer » 2008-07-18 07:54 @370

¿Dónde está definido 'ConectarDB' en el segundo programa?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor Kiloko » 2008-07-21 13:56 @622

:?
mismo error.

Código: Seleccionar todo
Can't locate DBI.pm in @INC (@INC contains: /usr/t2000/aortegam/bin/lib /usr/perl5/5.00503/sun4-solaris /usr/perl5/5.00503 /usr/perl5/site_perl/5.005/sun4-solaris /usr/perl5/site_perl/5.005 .) at conectarsb.pm line 4.
BEGIN failed--compilation aborted at conectarsb.pm line 4.
BEGIN failed--compilation aborted at dos.pl line 3.
Nunca interrumpas a tu enemigo cuando está cometiendo un error
Napoleón Bonaparte
Avatar de Usuario
Kiloko
Perlero nuevo
Perlero nuevo
 
Mensajes: 243
Registrado: 2007-07-10 18:26 @810
Ubicación: MOnterrey NL

Notapor explorer » 2008-07-21 14:22 @640

El error es claro: no está instalado DBI o Perl no sabe dónde está.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor Kiloko » 2008-07-21 15:01 @668

Efectivamente, mi buen explorer, pero el problema es que el equipo está algo cerrado, por lo que no se puede instalar bien Perl. Y por ende, los módulos. Opté por crear una carpeta y poner ahí los *.pm necesarios pero por lo visto no fue suficiente, así que en vez de eso estoy extrayendo la información de esta manera
Código: Seleccionar todo
bcp iDB.dbo.tbl_Node out /tmp/node.txt -t~ -c -U sa -P -SDBServer


Lo que hace esta línea es guardarme la tabla en el archivo node.txt el cual después voy a filtrar con Perl para sacar la información que necesito porque nada más no pude hacer correr el query por Perl, incluso traté con el módulo que propone DBI.pm (pereperl.pm), pero nada.
Nunca interrumpas a tu enemigo cuando está cometiendo un error
Napoleón Bonaparte
Avatar de Usuario
Kiloko
Perlero nuevo
Perlero nuevo
 
Mensajes: 243
Registrado: 2007-07-10 18:26 @810
Ubicación: MOnterrey NL


Volver a Bases de datos

¿Quién está conectado?

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

cron