/ / проблеми з доступом до mssql db за допомогою perl і freetds на unix - sql-сервер, perl, dbi, freetds

проблеми з доступом до mssql db за допомогою perl і freetds на unix - sql-сервер, perl, dbi, freetds

Я намагаюся підключитися до бази даних MS-SQL за допомогою perl і freetds. Я перевірив встановлення freetds за допомогою командного рядка unix

`/usr/local/exec/bin/tsql -S myDB -I freetds.conf -U userName -P passw0rd -D DataBase1 -o q < query.sql`

де query.sql містить мій SQL-запит. Вона добре працює. Але коли я спробую те ж саме з perl, це дає мені таку помилку -

`Your sybase home directory is /opt/sybase. Check the environment variable SYBASE if it is not the one you want! Cannot access file /opt/sybase/config/objectid.dat`

але працює

$ set | grep SYBASE врожайність SYBASE=/usr/fsf/freetds

Нижче мій код perl:

#!/usr/bin/perl5/core/5.8.8/exec/bin/perl

use lib qw(/usr/perl5/core/5.8.8/exec/lib);
use lib qw(/usr/perl5/DBI/1.607/exec/5.8/lib/perl5);
use lib qw(/usr/perl5/DBD-Sybase/1.09/exec/5.8/lib/perl5);

use DBI;
use DBD::Sybase;

my $user   = "userName";
my $passwd = "passw0rd";
my $server = "myDB";

`export SYBASE=/usr/fsf/freetds`;
`export LD_LIBRARY_PATH=/usr/fsf/freetds/0.82/exec/lib`;
`export FREETDSCONF=./freetds.conf`;

my $dbh = DBI->connect("DBD:Sybase:server=$server", $user, $passwd, {PrintError => 0});

unless ($dbh) {
die "ERROR: Failed to connect to server ($server).nERROR MESSAGE: $DBI::errstr";
}
else {
print "n";
print "Successful Connection.";
}

Будь-яка допомога дуже цінується!

Відповіді:

1 для відповіді № 1

Шлях до ваших водіїв говорить 5.10. Можливо, ви завантажили драйвери для неправильної версії perl. Або оновіть до 5.10.1 або отримайте драйвери для 5.8.8.


1 для відповіді № 2

Я це зрозумів. Ну, спочатку потрібно встановити змінну середовища SYBASE перед установкою DBD-Sybase. І це причина Your sybase home directory is /opt/sybase коли вона повинна вказати на місце встановлення freetds. Посилання: http://www.idevelopment.info/data/SQLServer/DBA_tips/Programming/PROG_4.shtml#Install%20DBD-Sybase