Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Otros Temas » Bases de Datos » Conectar BD SYBASE 2 Responder al tema
Nuevo tema


Página 1 de 1  [ 5 mensajes ] 
 
Nota 2008-07-17 17:35 @774
Avatar de Usuario
Perlero Adicto
Registrado: 2007-07-10 18:26 @810
Ubicación: MOnterrey NL
Mensajes: 244
Conectar BD SYBASE 2
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:
Syntax: [ Download ] [ Hide ]
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}));
}


Mi segundo programa:
Syntax: [ Download ] [ Hide ]
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;



Y me sale el error.

Código:
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.

_________________
Nunca interrumpas a tu enemigo cuando está cometiendo un error
Napoleón Bonaparte


Última edición por Kiloko el 2008-10-22 14:27 @644, editado 1 vez en total

Nota 2008-07-18 07:54 @370
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
¿Dónde está definido 'ConectarDB' en el segundo programa?

_________________
JF^D Perl programming


Nota 2008-07-21 13:56 @622
Avatar de Usuario
Perlero Adicto
Registrado: 2007-07-10 18:26 @810
Ubicación: MOnterrey NL
Mensajes: 244
:?
mismo error.

Código:
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


Nota 2008-07-21 14:22 @640
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
El error es claro: no está instalado DBI o Perl no sabe dónde está.

_________________
JF^D Perl programming


Nota 2008-07-21 15:01 @668
Avatar de Usuario
Perlero Adicto
Registrado: 2007-07-10 18:26 @810
Ubicación: MOnterrey NL
Mensajes: 244
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:
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


Responder al tema  [ 5 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO