Variables globales a sesión

22/10/2003 - 13:13 por [-H-] | Informe spam
Hola.
He preguntado en otra ocasión algo parecido, pero es que
me estoy volviendo loco a buscar y no encuentro nada de
nada. Es como si no existiera nada al respecto...
Necesito definir en SQL Server (En la propia BD),
variables de sesión a las que pueda acceder en cualquier
momento desde cualquier bloque de código Transact-SQL.
Por ejemplo, una variable que me diga cuantas veces he
accedido yo como usuario a la tabla "productos" desde que
di comienzo a la sesión, o una que me diga el importe de
los productos que llevo insertados en esa tabla desde que
dio comienzo la sesión.(las podría ir actualizando por
ejemplo, con triggers). Esto que comento, está permitido
por ejemplo en Oracle.
¿Alguien sabe si se permite ese tipo de variables en SQL
Server 2000?¿cómo y donde se declaran?
Me han remitido a los paquetes DTS en este mismo for, pero
lo que entiendo quye hacen los DTS no es lo que yo necesito
(yo ,repito, variables normales, pero que me mantengan el
valor durante toda una sesión).
Mi última opción, seria implementar esas variables en la
aplicación cliente que acceda a la BD, pero no cumpliría
con mis objetivos, y me complicaría mucho la vida.
Muchas gracias, espero que alguien pueda aclararme este
problema.
 

Leer las respuestas

#1 Carlos Sacristan
22/10/2003 - 13:29 | Informe spam
Si mantienes la conexión abierta, puedes crear tablas temporales (en los
BOL se explican mejor que lo que pudiera hacer yo aquí) en la que almacenar
los valores que creas convenientes. También, si sabes inglés, puedes leerte
el artículo de Fernando Guerrero sobre falsas tablas temporales:
http://www.sqlmag.com/Articles/Index.cfm?ArticleID377



Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)
MVP SQL Server
Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL

Archivo de respuestas anteriores en:
http://groups.google.com/groups?hl=....public.es
.sqlserver

(Guía de netiquette del foro)
http://www.helpdna.net/bosqlfaq00.htm
http://perso.wanadoo.es/rubenvigon/foro

(FAQ's de SQL Server)
http://support.microsoft.com/defaul.../70faq.asp
http://www.helpdna.net/bosqlfaq.htm

"[-H-]" escribió en el mensaje
news:047b01c3988d$7c5f7ff0$
Hola.
He preguntado en otra ocasión algo parecido, pero es que
me estoy volviendo loco a buscar y no encuentro nada de
nada. Es como si no existiera nada al respecto...
Necesito definir en SQL Server (En la propia BD),
variables de sesión a las que pueda acceder en cualquier
momento desde cualquier bloque de código Transact-SQL.
Por ejemplo, una variable que me diga cuantas veces he
accedido yo como usuario a la tabla "productos" desde que
di comienzo a la sesión, o una que me diga el importe de
los productos que llevo insertados en esa tabla desde que
dio comienzo la sesión.(las podría ir actualizando por
ejemplo, con triggers). Esto que comento, está permitido
por ejemplo en Oracle.
¿Alguien sabe si se permite ese tipo de variables en SQL
Server 2000?¿cómo y donde se declaran?
Me han remitido a los paquetes DTS en este mismo for, pero
lo que entiendo quye hacen los DTS no es lo que yo necesito
(yo ,repito, variables normales, pero que me mantengan el
valor durante toda una sesión).
Mi última opción, seria implementar esas variables en la
aplicación cliente que acceda a la BD, pero no cumpliría
con mis objetivos, y me complicaría mucho la vida.
Muchas gracias, espero que alguien pueda aclararme este
problema.

Preguntas similares