rdb$set_context('USER_SESSION', 'User_id', 1);
e
e
rdb$get_context('USER_SESSION', 'User_id');
Anche PostgreSQL permette di poter definire variabili legate alla sessione, con le seguenti istruzioni SQL:
set foo.username to ''flavio'' per poter definire la nuova variabile
e
select current_setting(''foo.username '') per recuperarne il valore.
Lo scope della variabile creata è limitata alla sessione: alla chiusura della sessione, la variabile non sarà più accessibile. Ed essendo una variabile il cui scope è legato alla sessione, non sarà accessibile a sessioni differenti da quella che l'ha creata.
Per fare un piccolo test, ho creato un progettino in Delphi che, eseguito due (o più volte), permette di definire una nuova variabile legata alla sessione durante la quale sono connesso al database.
Da questo link è possibile scaricare il progetto: Progetto Delphi
Dopo aver creato il vostro DB denominato mydb, mandate in esecuzione due istanze di esso contemporaneamente e provate voi stessi a verificare l'isolamento della variabile creata nell'ambito della sessione.
#codinglikeacoder
Nessun commento:
Posta un commento