2010-05-27 77 views
3

我想要一个很好的Perl模块用于连接到Sybase数据库。如何使用Perl连接到Sybase?

我的谷歌搜索使我看到sybperl作为一个可能的选择,但它一直没有更新自2005年以来

回答

11

使用DBD::Sybase(通过DBI)。我经常使用FreeTDS连接到SQL Server,但它实际上是针对Sybase的CT-Lib接口编写的。

1

我发现DBD::Sybase是用于Sysbase DB的最佳模块和Sybase::DBlib - Sybase DB-Library API。

+0

我如果你可以给一个downvote,请告知这个答案有什么问题? – Space 2010-05-28 04:05:24

0

这里是你如何连接用perl使用ODBC到Sybase在Linux(64位) -

安装Sybase Open Client和ODBC驱动程序。 (你可以得到这两个从ASE SDK或ASE服务器安装)

你需要一个ODBC驱动程序管理器,我有unixODBC的

定义驱动程序配置试图像 -

[Adaptive Server Enterprise] 
Description = Sybase ODBC Driver 
Driver = /sybase/DataAccess64/ODBC/lib/libsybdrvodb.so 
FileUsage = -1 

这里是一个perl样品 -

#!/usr/bin/perl 

use strict; 
use DBI; 
use DBD::ODBC; 

BEGIN { 
$ENV{SYBASE} = "/sybase"; 
} 
my $user = ""; 
my $passwd = ""; 
my $server = ""; 
my $database = "pubs1"; 
my $port = "5000"; 
my $data_source = "DBI:ODBC:DRIVER={Adaptive Server Enterprise};server=$server;port=$port;database=$database;"; 
my @drivers = DBI->available_drivers; 
print join(", ", @drivers), "\n"; 
my $dbh = DBI->connect($data_source, $user, $passwd) 
or die "Can't connect to $data_source: $DBI::errstr"; 
my $statement = "SELECT * FROM <table_name>"; 
my @row = $dbh->selectrow_array($statement); 
print "@row\n"; 
$dbh->disconnect; 

有关详细步骤,参见 - http://kapilraju.tumblr.com/post/131288341356/connect-to-sybase-using-perl-odbc