Saludos En un sistema Debian Etch, tengo instalado postgresql 8.1 Para hacer una conexión con una BD Sybase he descargado dbi-link, adicionalmente he instalado vía aptitude: libclass-dbi-perl libclass-dbi-pg-perl libdbi-perl libdbd-pg-perl libdbd-sybase-perl
Seguido los pasos que vienen en el readme.txt: createdb sybase createlang plperlu sybase psql -f dbi_link.sql sybase Luego, tomo el script sql que viene en la carpeta examples, mssql.sql: UPDATE pg_catalog.pg_settings SET setting = CASE WHEN 'dbi_link' = ANY(string_to_array(setting, ',')) THEN setting ELSE 'dbi_link,' || setting END WHERE name = 'search_path' ; SELECT dbi_link.make_accessor_functions( 'dbi:Sybase:NiftyDB'::dbi_link.data_source, 'user'::text, 'secret_password'::text, '--- AutoCommit: 1 RaiseError: 1 '::dbi_link.yaml, NULL::dbi_link.yaml, NULL::text, NULL::text, 'nifty_mssql'::text ); donde sustituyo NiftyDB por el nombre de la BD en sybase, user por el usuario, secret_password por la contraseña... pero nifty_mssql no sé por qué sustituirlo, pues no sé a qué se refiere... por probar, lo sustituí por el nombre de la BD, y obtuve el siguiente error: *Error de SQL:* ERROR: error from Perl function: error from Perl function: DBI connect('my_db','my_usr',...) failed: (no error string) at line 37 at line 35. *En la declaración:* UPDATE pg_catalog.pg_settings SET setting = CASE WHEN 'dbi_link' = ANY(string_to_array(setting, ',')) THEN setting ELSE 'dbi_link,' || setting END WHERE name = 'search_path' ; SELECT dbi_link.make_accessor_functions( 'dbi:Sybase:my_db'::dbi_link.data_source, 'my_usr'::text, 'my_pass'::text, '--- AutoCommit: 1 RaiseError: 1 '::dbi_link.yaml, NULL::dbi_link.yaml, NULL::text, NULL::text, 'my_db'::text ); Supongo, que debo tener alguna sustitución mal... o alguna librería que me falte? Comentarios? Desde ya, gracias -- -- Cesar A. Carbonara R. C.I. Nº V.11.952.572 -- Usuario Linux 377997 www.gulmer.org.ve Debian... todo lo que siempre has querido