我一直在试图找到这方面的一些手册信息,但我的搜索是徒劳的。获取Powerbuilder数据库连接的spid?
我想看看是否有办法从Powerbuilder中找到连接到数据库的唯一spid(从sp_who)。
就像用户登录一样,我可以看到他们的sp_who记录,但我希望能够在应用程序本身中获取和操作此ID。
(这可能是一个简单的一个免费推销员,PB专家!)
我一直在试图找到这方面的一些手册信息,但我的搜索是徒劳的。获取Powerbuilder数据库连接的spid?
我想看看是否有办法从Powerbuilder中找到连接到数据库的唯一spid(从sp_who)。
就像用户登录一样,我可以看到他们的sp_who记录,但我希望能够在应用程序本身中获取和操作此ID。
(这可能是一个简单的一个免费推销员,PB专家!)
嘛,试图今早再次google一下(并得到这个问题的第一个结果:P)之后,我已经发现实际上有一个@@SPID
变量,我可以调用。
我所做的是创建一个过程
create procedure prc_get_spid
as
begin
return @@spid
end
然后在我的应用我只是去
long ll_spid
ll_spid = sqlca.prc_get_spid()
这使我对SQLCA连接的SPID。
^_^
访问SPID而不创建存储过程的另一种方式是从一个派生表内访问它,如下所示。
SELECT ses.SPID
INTO :SPID
FROM (SELECT SPID = @@SPID) AS ses
USING SQLCA;