【问题标题】:How can I connect to Sybase with Perl?如何使用 Perl 连接到 Sybase?
【发布时间】:2011-02-24 15:44:53
【问题描述】:

我正在尝试使用一个好的 Perl 模块来连接到 Sybase 数据库。

我的谷歌搜索让我认为sybperl 是一个可能的选择,但它自 2005 年以来一直没有更新。

【问题讨论】:

    标签: sql perl sybase


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 如果您可以投反对票,请告知这个答案有什么问题?
      【解决方案3】:

      这里是你如何使用 perl 和 ODBC 连接到 linux 上的 sybase(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

      【讨论】:

        猜你喜欢
        • 2011-06-16
        • 2018-04-30
        • 1970-01-01
        • 1970-01-01
        • 2020-11-25
        • 2013-09-14
        • 2012-09-03
        • 1970-01-01
        • 2013-01-02
        相关资源
        最近更新 更多