Sybase-Perl DBLib将第四个参数映射到DBI Connect

时间:2011-11-24 11:45:55

标签: perl sybase kerberos dbi

我正在将perl脚本从DBlib转换为DBI以进行sybase连接。我正在实施kerberos。 DBLib连接中第四个参数(perl脚本的名称)的功能是什么,DBI中的等效函数是什么? 例如。 DBLib连接:

$dbh     = new Sybase::DBlib $USER, $PASS, $SRV, "file.pl";

这等于 -

$dsn = "dbi:sybase:server=$SRV;kerberos=$kerbprincipal;scriptName=file.pl";    
$dbh = DBI->connect($dsn,"","");

我在cpan.org找到了关于DBI scriptName的信息。

  

SCRIPTNAME

     

指定将在sp_who中显示的此连接的名称(即在program_name列的sysprocesses表中)。


答案:dblib中的第四个参数和dbi中的scriptName设置sysprocess表中的program_name列。这可以在日志中使用并监视数据库。

1 个答案:

答案 0 :(得分:1)

我相信MS SQL Server中的AppName连接字符串属性基本上都在sysprocesses表中(因此sp_who)结束,而SQL Server起初就像Sybase一样。我认为Sybase :: DBlib中的$ appname相当于DBD :: Sybase中的ScriptName。我现在无法证明这一点,因为我不再拥有Sybase。