comment créer une variable globale dans sql server 2008
J'ai vue que les retours utilisateurs des projets et aussi de leur ouverture de session windows. Un exemple de données est ci-dessous :-
project | Login
------------------
project 1 | richab
project 2 | stevej
J'ai besoin d'ajouter le domaine à la connexion. j'ai pu mettre cela dans le code mais je ne veux pas le faire dans tous les vue j'ai jamais créer qui tire les utilisateurs de connexions.
Puis-je créer une variable globale que je peux de référence dans la vue de code. Comment puis-je réaliser cela? Quoi de mieux pratique pour cela?
Vous devez vous connecter pour publier un commentaire.
Je ne sais pas si le Serveur SQL a des variables globales, mais vous pouvez utiliser une fonction définie par l'utilisateur comme suit:
et faire un
SELECT dbo.fn_GetDomainName() + Login FROM table WHERE ...
dans les emplacements correspondants dans votre point de vue.Il n'y a pas une telle chose comme une variable globale dans SQL Server.
Vous ne pouvez pas tout:
Vous pouvez faux avec CONTEXT_INFO mais de les utiliser de quelque chose qui pourrait durer au-delà d'une session ou redémarrer vous avez besoin de faire quelque chose comme ceci:
Vous pouvez utiliser une table temporaire.
Mon scénario est que lorsque les données sont mises à jour via un procédé connu, il ajoute une note à la table d'audit en précisant que "cela a été fait sur le but'.
Lorsque que le proc se déclenche, il insère une valeur unique dans #auditnote (qui est une table temp j'ai créer à la volée).
Le déclencheur vérifie que la table. Si elle existe, elle s'écarte de la note et le met sur la table d'audit.
Si elle ne le fait pas, il y va de l'entreprise.
J'ai regardé à l'aide d'un @@ variable, mais le truc, là, c'est de déterminer si la variable existe. Je ne vois pas un moyen.
EXEMPLE:
Procédure Stockée:
Déclencheur:
Je suis en utilisant @noteExists plutôt que null vérifier ce que quelqu'un pourrait insérer une valeur null comme le note, de sorte que nous ne savons pas si nulle signifie que la TABLE N'EXISTE PAS, ou la NOTE EST NULLE.