[caracas-pm] Conexión a Informix mediante Perl DBI

Ernesto Hernandez-Novich emhn at telcel.net.ve
Thu Sep 2 12:56:19 CDT 2004


On Wed, 1 Sep 2004, Alexis Arnal wrote:
> Saludos, estoy teniendo problemas al tratar de conectarme a una base de
> datos Informix con Perl. Ya instale el SDK de Informix y pude instalar
> el DBD::Informix y aparentemente todo salió bien, sin embargo cuando
> corro el script de prueba me manda el siguiente error:
>
> ---------------------------------------------------------------------
> DBI connect('dbname=drh;host='xx01';port='1234'','yo',...) failed: SQL:
> -354: Incorrect database or cursor name format. at ./conexperl.pl
> Error en la conexión
> ------------------------------------------------------------------
> Busque la descripción del error y me mostró lo siguiente:
>
> [root at m1344 ejemploperl]# finderr -354
> -354    Incorrect database or cursor name format.
>
> This statement contains the name of a database or a cursor in some
> invalid
> format. If the statement is part of a program, the name might have been
> passed in a host variable.

> $driver="dbi:Informix:dbname=$basedatos;host='xxx01';port='1234'";

La sintaxis del connect es incorrecta. El DBD::Informix no funciona
con dbname, host ni port.

Si la base de datos 'foo' es local (misma máquina en la que corre el script),
basta poner el nombre de la base de datos.

dbi:Informix:foo

Si la base de datos 'foo' es remota (en la máquina 'bar', diferente a la
que corre el script), entonces la base de datos se indica como

dbi:Informix:foo at bar

y 'bar' debe haber sido ingresada en el archivo sqlhosts del cliente
Informix en la máquina local.

Si la base de datos 'foo' es local _y_ está en Standard Engine (¡oh
cielos! ¡actualicen!), se coloca el camino de acceso en el sistema
de archivos.

dbi:Informix:/path/to/db/foo

Revisa el manual de DBD::Informix para más detalles, y consulta a tu
experto Informix local para configurar el sqlhost y los permisos de
acceso en la máquina remota.
-- 
Ernesto Hernández-Novich - On Linux 2.6.8.1 i686 - Unix: Live free or die!
Geek by nature, Linux by choice, Debian of course.
If you can't apt-get it, it isn't useful or doesn't exist.
GPG Key Fingerprint = 438C 49A2 A8C7 E7D7 1500 C507 96D6 A3D6 2F4C 85E3


More information about the caracas-pm mailing list