[ darko_sudarov @ 23.07.2007. 10:59 ] @
Postoji li neka SQL konmanda (FIREBIRD 2.0) koja moze da iscita IP adresu korisnika koji se loguje na bazu?
[ Mr. Rejn @ 23.07.2007. 20:43 ] @
^
Firebird 2.0.1 ima f-je tipa rdb$get_context i rdb$set_context za uzimanje/postavljanje
kontekstualnih promenljivih (ovo inače imaš na strani 33 Release notes za FB 2.0.1-
"New System Functions to Retrieve Context Variables",pa baci pogled ako imaš tu verziju
na mašini),npr:
Code:

SELECT
rdb$get_context('SYSTEM', 'CURRENT_USER'),
rdb$get_context('SYSTEM', 'SESSION_ID'),
rdb$get_context('SYSTEM', 'CLIENT_ADDRESS'),
current_timestamp
FROM rdb$database;

samo obrati pažnju u kom formatu dobijaš vrednosti za CLIENT_ADDRESS jer to za-
visi od vrste protokola:
Citat:

CLIENT_ADDRESS :: The wire protocol address of the remote client, represented as a string. The value is
an IP address in form "xxx.xxx.xxx.xxx" for TCPv4 protocol; the local process ID for XNET protocol; and
NULL for any other protocol.

npr. ovo gore daje:
Code:

RDB$GET_CONTEXT                                                                                                                                                                                                                                      
      RDB$GET_CONTEXT                                                                                                                                                                                                                                
            RDB$GET_CONTEXT                                                                                                                                                                                                                         
                          CURRENT_TIMESTAMP 
================================
================================ 
================================
SYSDBA                                                                                                                                                                                                                                          
      3                                                                                                                                                                                                                                  
            3720                                                                                                                                                                                                              
                  2007-07-23 21:28:46.1090 


3720 je lokalni process ID jer je povezan u lokalu (XNET).
Primer trigera (on connect i on disconnect) i tabela za logovanje konekcija uz upotrebu ovih f-ja imaš recimo
ovde: http://pabloj.blogspot.com/200...alpha-quick-glance-at-new.html (ovaj tip trigera postoji
za sada samo na 2.1,mislim da je beta 1 vec spremna za download).


Pozdrav,
Deki


[Ovu poruku je menjao Mr. Rejn dana 23.07.2007. u 22:02 GMT+1]
[ darko_sudarov @ 08.08.2007. 12:40 ] @
Zaboravio sam da se zahvalim,svaka cast na informisanosti Mr.Rejn.Puno pozdrava!