PDA

Ver la Versión Completa : Cómo usar una variable de systema en sql?


dazpiroz
20-06-2003, 19:59:21
Hola a todos,

He leído que en Firebird 1.5 existe una nueva variable de systema TRANSACTION_ID y que está disponible en SQL y en PSQL.

¿Cómo hago referencia a ella en una sentencia SQL?

Quiero identificar la sesión del usuario para filtrar vistas por datos del usuario de la sesión.

Gracias de antemano.

D.

guillotmarc
20-06-2003, 22:31:06
Hola.

No tengo ahora el FB 1.5 a mano para probarlo, pero en principio deberías poder utilizar la variable directamente (igual que utilizas otras variables como current_timestamp, ...)

Por ejplo.:


insert into TB_ENTRADAS (ENT_SESION, ENT_HORA)
values (transaction_id, current_timestamp) ;


Saludos.

dazpiroz
21-06-2003, 09:53:55
Hola Marc,

Ayer estuve probándolo de de todas las maneras con el IBSQL, en triggers, en procedimientos, en sql, en Vistas, y nada. Siempre me dice que no conoce el campo.

El objetivo es que cuando un usuario inicia una sesión en el programa, grabe en su registro de la tabla usuario el id de sesión de manera que las vistas que tenga definidas del tipo :

Create View IdiomaUsuario
(idioma)
as
SELECT IDIOMA FROM USUARIO
WHERE USUARIO.SESIONID=SESION_ID

se filtren automáticamente una vez que haya guardado el sesion_id en la tabla usuario para el usuario del programa.

Gracias, y un saludo.
D.

dazpiroz
23-06-2003, 09:13:43
Qué tontería,

Resulta que en la 1.5 RC 1 les cambiaron el nombre a current_connection y current_transaction, por eso no me las reconocía. No me leí el txt entero. -:D

Ahora a ver si funciona...

Saludos.
D.